# Copyright (C) 2003 Free Software Foundation, Inc.

# This program is free software; you can redistribute it and/or modify
# it under the terms of the GNU General Public License as published by
# the Free Software Foundation; either version 2 of the License, or
# (at your option) any later version.
# 
# This program is distributed in the hope that it will be useful,
# but WITHOUT ANY WARRANTY; without even the implied warranty of
# MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE.  See the
# GNU General Public License for more details.
# 
# You should have received a copy of the GNU General Public License
# along with this program; if not, write to the Free Software
# Foundation, Inc., 59 Temple Place - Suite 330, Boston, MA 02111-1307, USA.  

# Please email any bugs, comments, and/or additions to this file to:
# bug-gdb@prep.ai.mit.edu

# This file was written by Michael Snyder (msnyder@redhat.com)

if $tracelevel then {
	strace $tracelevel
}

if ![istarget "h8300*-*-*"] {
    verbose "Tests ignored for all but h8300s based targets."
    return
}

set prms_id 0
set bug_id 0

set testfile "t04_sub"
set srcfile ${srcdir}/${subdir}/${testfile}.s
set objfile ${objdir}/${subdir}/${testfile}.o
set binfile ${objdir}/${subdir}/${testfile}.x

set asm-flags "";
set link-flags "-m h8300sxelf";


if {[target_assemble $srcfile $objfile "${asm-flags}"] != ""} then {
     gdb_suppress_entire_file "Testcase assembly failed, so all tests in this file will automatically fail."
}

if {[target_link $objfile $binfile "${link-flags}"] != ""} then {
     gdb_suppress_entire_file "Testcase link failed, so all tests in this file will automatically fail."
}

gdb_start
gdb_reinitialize_dir $srcdir/$subdir
gdb_load $binfile

gdb_test "x /i _start" "sub.b\t#0x12(:8|),@er1" \
	"sub.b #0x12:8,@er1"
gdb_test "x" "sub.b\t#0x12(:8|),@\\(0x3(:2|),er1\\)" \
	"sub.b #0x12:8,@(0x3:2,er1)"
gdb_test "x" "sub.b\t#0x12(:8|),@er1\\+" \
	"sub.b #0x12:8,@er1+"
gdb_test "x" "sub.b\t#0x12(:8|),@-er1" \
	"sub.b #0x12:8,@-er1"
gdb_test "x" "sub.b\t#0x12(:8|),@\\+er1" \
	"sub.b #0x12:8,@+er1"
gdb_test "x" "sub.b\t#0x12(:8|),@er1-" \
	"sub.b #0x12:8,@er1-"
gdb_test "x" "sub.b\t#0x12(:8|),@\\(0x1234(:16|),er1\\)" \
	"sub.b #0x12:8,@(0x1234:16,er1)"
gdb_test "x" "sub.b\t#0x12(:8|),@\\(0x12345678(:32|),er1\\)" \
	"sub.b #0x12:8,@(0x12345678:32,er1)"
gdb_test "x" "sub.b\t#0x12(:8|),@\\(0x1234(:16|),r2l.b\\)" \
	"sub.b #0x12:8,@(0x1234:16,r2l.b)"
gdb_test "x" "sub.b\t#0x12(:8|),@\\(0x1234(:16|),r2.w\\)" \
	"sub.b #0x12:8,@(0x1234:16,r2.w)"
gdb_test "x" "sub.b\t#0x12(:8|),@\\(0x1234(:16|),er2.l\\)" \
	"sub.b #0x12:8,@(0x1234:16,er2.l)"
gdb_test "x" "sub.b\t#0x12(:8|),@\\(0x12345678(:32|),r2l.b\\)" \
	"sub.b #0x12:8,@(0x12345678:32,r2l.b)"
gdb_test "x" "sub.b\t#0x12(:8|),@\\(0x12345678(:32|),r2.w\\)" \
	"sub.b #0x12:8,@(0x12345678:32,r2.w)"
gdb_test "x" "sub.b\t#0x12(:8|),@\\(0x12345678(:32|),er2.l\\)" \
	"sub.b #0x12:8,@(0x12345678:32,er2.l)"
gdb_test "x" "sub.b\t#0x12(:8|),@0x9a(:8|)" \
	"sub.b #0x12:8,@0x9a:8"
gdb_test "x" "sub.b\t#0x12(:8|),@0x1234(:16|)" \
	"sub.b #0x12:8,@0x1234:16"
gdb_test "x" "sub.b\t#0x12(:8|),@0x12345678(:32|)" \
	"sub.b #0x12:8,@0x12345678:32"
gdb_test "x" "sub.b\tr3h,r1h" \
	"sub.b r3h,r1h"
gdb_test "x" "sub.b\tr3h,@er1" \
	"sub.b r3h,@er1"
gdb_test "x" "sub.b\tr3h,@\\(0x3(:2|),er1\\)" \
	"sub.b r3h,@(0x3:2,er1)"
gdb_test "x" "sub.b\tr3h,@er1\\+" \
	"sub.b r3h,@er1+"
gdb_test "x" "sub.b\tr3h,@-er1" \
	"sub.b r3h,@-er1"
gdb_test "x" "sub.b\tr3h,@\\+er1" \
	"sub.b r3h,@+er1"
gdb_test "x" "sub.b\tr3h,@er1-" \
	"sub.b r3h,@er1-"
gdb_test "x" "sub.b\tr3h,@\\(0x1234(:16|),er1\\)" \
	"sub.b r3h,@(0x1234:16,er1)"
gdb_test "x" "sub.b\tr3h,@\\(0x12345678(:32|),er1\\)" \
	"sub.b r3h,@(0x12345678:32,er1)"
gdb_test "x" "sub.b\tr3h,@\\(0x1234(:16|),r2l.b\\)" \
	"sub.b r3h,@(0x1234:16,r2l.b)"
gdb_test "x" "sub.b\tr3h,@\\(0x1234(:16|),r2.w\\)" \
	"sub.b r3h,@(0x1234:16,r2.w)"
gdb_test "x" "sub.b\tr3h,@\\(0x1234(:16|),er2.l\\)" \
	"sub.b r3h,@(0x1234:16,er2.l)"
gdb_test "x" "sub.b\tr3h,@\\(0x12345678(:32|),r2l.b\\)" \
	"sub.b r3h,@(0x12345678:32,r2l.b)"
gdb_test "x" "sub.b\tr3h,@\\(0x12345678(:32|),r2.w\\)" \
	"sub.b r3h,@(0x12345678:32,r2.w)"
gdb_test "x" "sub.b\tr3h,@\\(0x12345678(:32|),er2.l\\)" \
	"sub.b r3h,@(0x12345678:32,er2.l)"
gdb_test "x" "sub.b\tr3h,@0x12(:8|)" \
	"sub.b r3h,@0x12:8"
gdb_test "x" "sub.b\tr3h,@0x1234(:16|)" \
	"sub.b r3h,@0x1234:16"
gdb_test "x" "sub.b\tr3h,@0x12345678(:32|)" \
	"sub.b r3h,@0x12345678:32"
gdb_test "x" "sub.b\t@er3,r1h" \
	"sub.b @er3,r1h"
gdb_test "x" "sub.b\t@\\(0x3(:2|),er3\\),r1h" \
	"sub.b @(0x3:2,er3),r1h"
gdb_test "x" "sub.b\t@er3\\+,r1h" \
	"sub.b @er3+,r1h"
gdb_test "x" "sub.b\t@-er3,r1h" \
	"sub.b @-er3,r1h"
gdb_test "x" "sub.b\t@\\+er3,r1h" \
	"sub.b @+er3,r1h"
gdb_test "x" "sub.b\t@er3-,r1h" \
	"sub.b @er3-,r1h"
gdb_test "x" "sub.b\t@\\(0x1234(:16|),er1\\),r1h" \
	"sub.b @(0x1234:16,er1),r1h"
gdb_test "x" "sub.b\t@\\(0x12345678(:32|),er1\\),r1h" \
	"sub.b @(0x12345678:32,er1),r1h"
gdb_test "x" "sub.b\t@\\(0x1234(:16|),r2l.b\\),r1h" \
	"sub.b @(0x1234:16,r2l.b),r1h"
gdb_test "x" "sub.b\t@\\(0x1234(:16|),r2.w\\),r1h" \
	"sub.b @(0x1234:16,r2.w),r1h"
gdb_test "x" "sub.b\t@\\(0x1234(:16|),er2.l\\),r1h" \
	"sub.b @(0x1234:16,er2.l),r1h"
gdb_test "x" "sub.b\t@\\(0x12345678(:32|),r2l.b\\),r1h" \
	"sub.b @(0x12345678:32,r2l.b),r1h"
gdb_test "x" "sub.b\t@\\(0x12345678(:32|),r2.w\\),r1h" \
	"sub.b @(0x12345678:32,r2.w),r1h"
gdb_test "x" "sub.b\t@\\(0x12345678(:32|),er2.l\\),r1h" \
	"sub.b @(0x12345678:32,er2.l),r1h"
gdb_test "x" "sub.b\t@0x12(:8|),r1h" \
	"sub.b @0x12:8,r1h"
gdb_test "x" "sub.b\t@0x1234(:16|),r1h" \
	"sub.b @0x1234:16,r1h"
gdb_test "x" "sub.b\t@0x12345678(:32|),r1h" \
	"sub.b @0x12345678:32,r1h"
gdb_test "x" "sub.b\t@er3,@er1" \
	"sub.b @er3,@er1"
gdb_test "x" "sub.b\t@er3,@\\(0x3(:2|),er1\\)" \
	"sub.b @er3,@(0x3:2,er1)"
gdb_test "x" "sub.b\t@er3,@-er1" \
	"sub.b @er3,@-er1"
gdb_test "x" "sub.b\t@er3,@er1\\+" \
	"sub.b @er3,@er1+"
gdb_test "x" "sub.b\t@er3,@er1-" \
	"sub.b @er3,@er1-"
gdb_test "x" "sub.b\t@er3,@\\+er1" \
	"sub.b @er3,@+er1"
gdb_test "x" "sub.b\t@er3,@\\(0x9abc(:16|),er1\\)" \
	"sub.b @er3,@(0x9abc:16,er1)"
gdb_test "x" "sub.b\t@er3,@\\(0x9abcdef0(:32|),er1\\)" \
	"sub.b @er3,@(0x9abcdef0:32,er1)"
gdb_test "x" "sub.b\t@er3,@\\(0x9abc(:16|),r2l.b\\)" \
	"sub.b @er3,@(0x9abc:16,r2l.b)"
gdb_test "x" "sub.b\t@er3,@\\(0x9abc(:16|),r2.w\\)" \
	"sub.b @er3,@(0x9abc:16,r2.w)"
gdb_test "x" "sub.b\t@er3,@\\(0x9abc(:16|),er2.l\\)" \
	"sub.b @er3,@(0x9abc:16,er2.l)"
gdb_test "x" "sub.b\t@er3,@\\(0x9abcdef0(:32|),r2l.b\\)" \
	"sub.b @er3,@(0x9abcdef0:32,r2l.b)"
gdb_test "x" "sub.b\t@er3,@\\(0x9abcdef0(:32|),r2.w\\)" \
	"sub.b @er3,@(0x9abcdef0:32,r2.w)"
gdb_test "x" "sub.b\t@er3,@\\(0x9abcdef0(:32|),er2.l\\)" \
	"sub.b @er3,@(0x9abcdef0:32,er2.l)"
gdb_test "x" "sub.b\t@er3,@0x9abc(:16|)" \
	"sub.b @er3,@0x9abc:16"
gdb_test "x" "sub.b\t@er3,@0x9abcdef0(:32|)" \
	"sub.b @er3,@0x9abcdef0:32"
gdb_test "x" "sub.b\t@-er3,@er1" \
	"sub.b @-er3,@er1"
gdb_test "x" "sub.b\t@-er3,@\\(0x3(:2|),er1\\)" \
	"sub.b @-er3,@(0x3:2,er1)"
gdb_test "x" "sub.b\t@-er3,@-er1" \
	"sub.b @-er3,@-er1"
gdb_test "x" "sub.b\t@-er3,@er1\\+" \
	"sub.b @-er3,@er1+"
gdb_test "x" "sub.b\t@-er3,@er1-" \
	"sub.b @-er3,@er1-"
gdb_test "x" "sub.b\t@-er3,@\\+er1" \
	"sub.b @-er3,@+er1"
gdb_test "x" "sub.b\t@-er3,@\\(0x9abc(:16|),er1\\)" \
	"sub.b @-er3,@(0x9abc:16,er1)"
gdb_test "x" "sub.b\t@-er3,@\\(0x9abcdef0(:32|),er1\\)" \
	"sub.b @-er3,@(0x9abcdef0:32,er1)"
gdb_test "x" "sub.b\t@-er3,@\\(0x9abc(:16|),r2l.b\\)" \
	"sub.b @-er3,@(0x9abc:16,r2l.b)"
gdb_test "x" "sub.b\t@-er3,@\\(0x9abc(:16|),r2.w\\)" \
	"sub.b @-er3,@(0x9abc:16,r2.w)"
gdb_test "x" "sub.b\t@-er3,@\\(0x9abc(:16|),er2.l\\)" \
	"sub.b @-er3,@(0x9abc:16,er2.l)"
gdb_test "x" "sub.b\t@-er3,@\\(0x9abcdef0(:32|),r2l.b\\)" \
	"sub.b @-er3,@(0x9abcdef0:32,r2l.b)"
gdb_test "x" "sub.b\t@-er3,@\\(0x9abcdef0(:32|),r2.w\\)" \
	"sub.b @-er3,@(0x9abcdef0:32,r2.w)"
gdb_test "x" "sub.b\t@-er3,@\\(0x9abcdef0(:32|),er2.l\\)" \
	"sub.b @-er3,@(0x9abcdef0:32,er2.l)"
gdb_test "x" "sub.b\t@-er3,@0x9abc(:16|)" \
	"sub.b @-er3,@0x9abc:16"
gdb_test "x" "sub.b\t@-er3,@0x9abcdef0(:32|)" \
	"sub.b @-er3,@0x9abcdef0:32"
gdb_test "x" "sub.b\t@er3\\+,@er1" \
	"sub.b @er3+,@er1"
gdb_test "x" "sub.b\t@er3\\+,@\\(0x3(:2|),er1\\)" \
	"sub.b @er3+,@(0x3:2,er1)"
gdb_test "x" "sub.b\t@er3\\+,@-er1" \
	"sub.b @er3+,@-er1"
gdb_test "x" "sub.b\t@er3\\+,@er1\\+" \
	"sub.b @er3+,@er1+"
gdb_test "x" "sub.b\t@er3\\+,@er1-" \
	"sub.b @er3+,@er1-"
gdb_test "x" "sub.b\t@er3\\+,@\\+er1" \
	"sub.b @er3+,@+er1"
gdb_test "x" "sub.b\t@er3\\+,@\\(0x9abc(:16|),er1\\)" \
	"sub.b @er3+,@(0x9abc:16,er1)"
gdb_test "x" "sub.b\t@er3\\+,@\\(0x9abcdef0(:32|),er1\\)" \
	"sub.b @er3+,@(0x9abcdef0:32,er1)"
gdb_test "x" "sub.b\t@er3\\+,@\\(0x9abc(:16|),r2l.b\\)" \
	"sub.b @er3+,@(0x9abc:16,r2l.b)"
gdb_test "x" "sub.b\t@er3\\+,@\\(0x9abc(:16|),r2.w\\)" \
	"sub.b @er3+,@(0x9abc:16,r2.w)"
gdb_test "x" "sub.b\t@er3\\+,@\\(0x9abc(:16|),er2.l\\)" \
	"sub.b @er3+,@(0x9abc:16,er2.l)"
gdb_test "x" "sub.b\t@er3\\+,@\\(0x9abcdef0(:32|),r2l.b\\)" \
	"sub.b @er3+,@(0x9abcdef0:32,r2l.b)"
gdb_test "x" "sub.b\t@er3\\+,@\\(0x9abcdef0(:32|),r2.w\\)" \
	"sub.b @er3+,@(0x9abcdef0:32,r2.w)"
gdb_test "x" "sub.b\t@er3\\+,@\\(0x9abcdef0(:32|),er2.l\\)" \
	"sub.b @er3+,@(0x9abcdef0:32,er2.l)"
gdb_test "x" "sub.b\t@er3\\+,@0x9abc(:16|)" \
	"sub.b @er3+,@0x9abc:16"
gdb_test "x" "sub.b\t@er3\\+,@0x9abcdef0(:32|)" \
	"sub.b @er3+,@0x9abcdef0:32"
gdb_test "x" "sub.b\t@er3-,@er1" \
	"sub.b @er3-,@er1"
gdb_test "x" "sub.b\t@er3-,@\\(0x3(:2|),er1\\)" \
	"sub.b @er3-,@(0x3:2,er1)"
gdb_test "x" "sub.b\t@er3-,@-er1" \
	"sub.b @er3-,@-er1"
gdb_test "x" "sub.b\t@er3-,@er1\\+" \
	"sub.b @er3-,@er1+"
gdb_test "x" "sub.b\t@er3-,@er1-" \
	"sub.b @er3-,@er1-"
gdb_test "x" "sub.b\t@er3-,@\\+er1" \
	"sub.b @er3-,@+er1"
gdb_test "x" "sub.b\t@er3-,@\\(0x9abc(:16|),er1\\)" \
	"sub.b @er3-,@(0x9abc:16,er1)"
gdb_test "x" "sub.b\t@er3-,@\\(0x9abcdef0(:32|),er1\\)" \
	"sub.b @er3-,@(0x9abcdef0:32,er1)"
gdb_test "x" "sub.b\t@er3-,@\\(0x9abc(:16|),r2l.b\\)" \
	"sub.b @er3-,@(0x9abc:16,r2l.b)"
gdb_test "x" "sub.b\t@er3-,@\\(0x9abc(:16|),r2.w\\)" \
	"sub.b @er3-,@(0x9abc:16,r2.w)"
gdb_test "x" "sub.b\t@er3-,@\\(0x9abc(:16|),er2.l\\)" \
	"sub.b @er3-,@(0x9abc:16,er2.l)"
gdb_test "x" "sub.b\t@er3-,@\\(0x9abcdef0(:32|),r2l.b\\)" \
	"sub.b @er3-,@(0x9abcdef0:32,r2l.b)"
gdb_test "x" "sub.b\t@er3-,@\\(0x9abcdef0(:32|),r2.w\\)" \
	"sub.b @er3-,@(0x9abcdef0:32,r2.w)"
gdb_test "x" "sub.b\t@er3-,@\\(0x9abcdef0(:32|),er2.l\\)" \
	"sub.b @er3-,@(0x9abcdef0:32,er2.l)"
gdb_test "x" "sub.b\t@er3-,@0x9abc(:16|)" \
	"sub.b @er3-,@0x9abc:16"
gdb_test "x" "sub.b\t@er3-,@0x9abcdef0(:32|)" \
	"sub.b @er3-,@0x9abcdef0:32"
gdb_test "x" "sub.b\t@\\+er3,@er1" \
	"sub.b @+er3,@er1"
gdb_test "x" "sub.b\t@\\+er3,@\\(0x3(:2|),er1\\)" \
	"sub.b @+er3,@(0x3:2,er1)"
gdb_test "x" "sub.b\t@\\+er3,@-er1" \
	"sub.b @+er3,@-er1"
gdb_test "x" "sub.b\t@\\+er3,@er1\\+" \
	"sub.b @+er3,@er1+"
gdb_test "x" "sub.b\t@\\+er3,@er1-" \
	"sub.b @+er3,@er1-"
gdb_test "x" "sub.b\t@\\+er3,@\\+er1" \
	"sub.b @+er3,@+er1"
gdb_test "x" "sub.b\t@\\+er3,@\\(0x9abc(:16|),er1\\)" \
	"sub.b @+er3,@(0x9abc:16,er1)"
gdb_test "x" "sub.b\t@\\+er3,@\\(0x9abcdef0(:32|),er1\\)" \
	"sub.b @+er3,@(0x9abcdef0:32,er1)"
gdb_test "x" "sub.b\t@\\+er3,@\\(0x9abc(:16|),r2l.b\\)" \
	"sub.b @+er3,@(0x9abc:16,r2l.b)"
gdb_test "x" "sub.b\t@\\+er3,@\\(0x9abc(:16|),r2.w\\)" \
	"sub.b @+er3,@(0x9abc:16,r2.w)"
gdb_test "x" "sub.b\t@\\+er3,@\\(0x9abc(:16|),er2.l\\)" \
	"sub.b @+er3,@(0x9abc:16,er2.l)"
gdb_test "x" "sub.b\t@\\+er3,@\\(0x9abcdef0(:32|),r2l.b\\)" \
	"sub.b @+er3,@(0x9abcdef0:32,r2l.b)"
gdb_test "x" "sub.b\t@\\+er3,@\\(0x9abcdef0(:32|),r2.w\\)" \
	"sub.b @+er3,@(0x9abcdef0:32,r2.w)"
gdb_test "x" "sub.b\t@\\+er3,@\\(0x9abcdef0(:32|),er2.l\\)" \
	"sub.b @+er3,@(0x9abcdef0:32,er2.l)"
gdb_test "x" "sub.b\t@\\+er3,@0x9abc(:16|)" \
	"sub.b @+er3,@0x9abc:16"
gdb_test "x" "sub.b\t@\\+er3,@0x9abcdef0(:32|)" \
	"sub.b @+er3,@0x9abcdef0:32"
gdb_test "x" "sub.b\t@\\(0x1234(:16|),er3\\),@er1" \
	"sub.b @(0x1234:16,er3),@er1"
gdb_test "x" "sub.b\t@\\(0x1234(:16|),er3\\),@\\(0x3(:2|),er1\\)" \
	"sub.b @(0x1234:16,er3),@(0x3:2,er1)"
gdb_test "x" "sub.b\t@\\(0x1234(:16|),er3\\),@-er1" \
	"sub.b @(0x1234:16,er3),@-er1"
gdb_test "x" "sub.b\t@\\(0x1234(:16|),er3\\),@er1\\+" \
	"sub.b @(0x1234:16,er3),@er1+"
gdb_test "x" "sub.b\t@\\(0x1234(:16|),er3\\),@er1-" \
	"sub.b @(0x1234:16,er3),@er1-"
gdb_test "x" "sub.b\t@\\(0x1234(:16|),er3\\),@\\+er1" \
	"sub.b @(0x1234:16,er3),@+er1"
gdb_test "x" "sub.b\t@\\(0x1234(:16|),er3\\),@\\(0x9abc(:16|),er1\\)" \
	"sub.b @(0x1234:16,er3),@(0x9abc:16,er1)"
gdb_test "x" "sub.b\t@\\(0x1234(:16|),er3\\),@\\(0x9abcdef0(:32|),er1\\)" \
	"sub.b @(0x1234:16,er3),@(0x9abcdef0:32,er1)"
gdb_test "x" "sub.b\t@\\(0x1234(:16|),er3\\),@\\(0x9abc(:16|),r2l.b\\)" \
	"sub.b @(0x1234:16,er3),@(0x9abc:16,r2l.b)"
gdb_test "x" "sub.b\t@\\(0x1234(:16|),er3\\),@\\(0x9abc(:16|),r2.w\\)" \
	"sub.b @(0x1234:16,er3),@(0x9abc:16,r2.w)"
gdb_test "x" "sub.b\t@\\(0x1234(:16|),er3\\),@\\(0x9abc(:16|),er2.l\\)" \
	"sub.b @(0x1234:16,er3),@(0x9abc:16,er2.l)"
gdb_test "x" "sub.b\t@\\(0x1234(:16|),er3\\),@\\(0x9abcdef0(:32|),r2l.b\\)" \
	"sub.b @(0x1234:16,er3),@(0x9abcdef0:32,r2l.b)"
gdb_test "x" "sub.b\t@\\(0x1234(:16|),er3\\),@\\(0x9abcdef0(:32|),r2.w\\)" \
	"sub.b @(0x1234:16,er3),@(0x9abcdef0:32,r2.w)"
gdb_test "x" "sub.b\t@\\(0x1234(:16|),er3\\),@\\(0x9abcdef0(:32|),er2.l\\)" \
	"sub.b @(0x1234:16,er3),@(0x9abcdef0:32,er2.l)"
gdb_test "x" "sub.b\t@\\(0x1234(:16|),er3\\),@0x9abc(:16|)" \
	"sub.b @(0x1234:16,er3),@0x9abc:16"
gdb_test "x" "sub.b\t@\\(0x1234(:16|),er3\\),@0x9abcdef0(:32|)" \
	"sub.b @(0x1234:16,er3),@0x9abcdef0:32"
gdb_test "x" "sub.b\t@\\(0x12345678(:32|),er3\\),@er1" \
	"sub.b @(0x12345678:32,er3),@er1"
gdb_test "x" "sub.b\t@\\(0x12345678(:32|),er3\\),@\\(0x3(:2|),er1\\)" \
	"sub.b @(0x12345678:32,er3),@(0x3:2,er1)"
gdb_test "x" "sub.b\t@\\(0x12345678(:32|),er3\\),@-er1" \
	"sub.b @(0x12345678:32,er3),@-er1"
gdb_test "x" "sub.b\t@\\(0x12345678(:32|),er3\\),@er1\\+" \
	"sub.b @(0x12345678:32,er3),@er1+"
gdb_test "x" "sub.b\t@\\(0x12345678(:32|),er3\\),@er1-" \
	"sub.b @(0x12345678:32,er3),@er1-"
gdb_test "x" "sub.b\t@\\(0x12345678(:32|),er3\\),@\\+er1" \
	"sub.b @(0x12345678:32,er3),@+er1"
gdb_test "x" "sub.b\t@\\(0x12345678(:32|),er3\\),@\\(0x9abc(:16|),er1\\)" \
	"sub.b @(0x12345678:32,er3),@(0x9abc:16,er1)"
gdb_test "x" "sub.b\t@\\(0x12345678(:32|),er3\\),@\\(0x9abcdef0(:32|),er1\\)" \
	"sub.b @(0x12345678:32,er3),@(0x9abcdef0:32,er1)"
gdb_test "x" "sub.b\t@\\(0x12345678(:32|),er3\\),@\\(0x9abc(:16|),r2l.b\\)" \
	"sub.b @(0x12345678:32,er3),@(0x9abc:16,r2l.b)"
gdb_test "x" "sub.b\t@\\(0x12345678(:32|),er3\\),@\\(0x9abc(:16|),r2.w\\)" \
	"sub.b @(0x12345678:32,er3),@(0x9abc:16,r2.w)"
gdb_test "x" "sub.b\t@\\(0x12345678(:32|),er3\\),@\\(0x9abc(:16|),er2.l\\)" \
	"sub.b @(0x12345678:32,er3),@(0x9abc:16,er2.l)"
gdb_test "x" "sub.b\t@\\(0x12345678(:32|),er3\\),@\\(0x9abcdef0(:32|),r2l.b\\)" \
	"sub.b @(0x12345678:32,er3),@(0x9abcdef0:32,r2l.b)"
gdb_test "x" "sub.b\t@\\(0x12345678(:32|),er3\\),@\\(0x9abcdef0(:32|),r2.w\\)" \
	"sub.b @(0x12345678:32,er3),@(0x9abcdef0:32,r2.w)"
gdb_test "x" "sub.b\t@\\(0x12345678(:32|),er3\\),@\\(0x9abcdef0(:32|),er2.l\\)" \
	"sub.b @(0x12345678:32,er3),@(0x9abcdef0:32,er2.l)"
gdb_test "x" "sub.b\t@\\(0x12345678(:32|),er3\\),@0x9abc(:16|)" \
	"sub.b @(0x12345678:32,er3),@0x9abc:16"
gdb_test "x" "sub.b\t@\\(0x12345678(:32|),er3\\),@0x9abcdef0(:32|)" \
	"sub.b @(0x12345678:32,er3),@0x9abcdef0:32"
gdb_test "x" "sub.b\t@\\(0x1234(:16|),r3l.b\\),@er1" \
	"sub.b @(0x1234:16,r3l.b),@er1"
gdb_test "x" "sub.b\t@\\(0x1234(:16|),r3l.b\\),@\\(0x3(:2|),er1\\)" \
	"sub.b @(0x1234:16,r3l.b),@(0x3:2,er1)"
gdb_test "x" "sub.b\t@\\(0x1234(:16|),r3l.b\\),@-er1" \
	"sub.b @(0x1234:16,r3l.b),@-er1"
gdb_test "x" "sub.b\t@\\(0x1234(:16|),r3l.b\\),@er1\\+" \
	"sub.b @(0x1234:16,r3l.b),@er1+"
gdb_test "x" "sub.b\t@\\(0x1234(:16|),r3l.b\\),@er1-" \
	"sub.b @(0x1234:16,r3l.b),@er1-"
gdb_test "x" "sub.b\t@\\(0x1234(:16|),r3l.b\\),@\\+er1" \
	"sub.b @(0x1234:16,r3l.b),@+er1"
gdb_test "x" "sub.b\t@\\(0x1234(:16|),r3l.b\\),@\\(0x9abc(:16|),er1\\)" \
	"sub.b @(0x1234:16,r3l.b),@(0x9abc:16,er1)"
gdb_test "x" "sub.b\t@\\(0x1234(:16|),r3l.b\\),@\\(0x9abcdef0(:32|),er1\\)" \
	"sub.b @(0x1234:16,r3l.b),@(0x9abcdef0:32,er1)"
gdb_test "x" "sub.b\t@\\(0x1234(:16|),r3l.b\\),@\\(0x9abc(:16|),r2l.b\\)" \
	"sub.b @(0x1234:16,r3l.b),@(0x9abc:16,r2l.b)"
gdb_test "x" "sub.b\t@\\(0x1234(:16|),r3l.b\\),@\\(0x9abc(:16|),r2.w\\)" \
	"sub.b @(0x1234:16,r3l.b),@(0x9abc:16,r2.w)"
gdb_test "x" "sub.b\t@\\(0x1234(:16|),r3l.b\\),@\\(0x9abc(:16|),er2.l\\)" \
	"sub.b @(0x1234:16,r3l.b),@(0x9abc:16,er2.l)"
gdb_test "x" "sub.b\t@\\(0x1234(:16|),r3l.b\\),@\\(0x9abcdef0(:32|),r2l.b\\)" \
	"sub.b @(0x1234:16,r3l.b),@(0x9abcdef0:32,r2l.b)"
gdb_test "x" "sub.b\t@\\(0x1234(:16|),r3l.b\\),@\\(0x9abcdef0(:32|),r2.w\\)" \
	"sub.b @(0x1234:16,r3l.b),@(0x9abcdef0:32,r2.w)"
gdb_test "x" "sub.b\t@\\(0x1234(:16|),r3l.b\\),@\\(0x9abcdef0(:32|),er2.l\\)" \
	"sub.b @(0x1234:16,r3l.b),@(0x9abcdef0:32,er2.l)"
gdb_test "x" "sub.b\t@\\(0x1234(:16|),r3l.b\\),@0x9abc(:16|)" \
	"sub.b @(0x1234:16,r3l.b),@0x9abc:16"
gdb_test "x" "sub.b\t@\\(0x1234(:16|),r3l.b\\),@0x9abcdef0(:32|)" \
	"sub.b @(0x1234:16,r3l.b),@0x9abcdef0:32"
gdb_test "x" "sub.b\t@\\(0x1234(:16|),r3.w\\),@er1" \
	"sub.b @(0x1234:16,r3.w),@er1"
gdb_test "x" "sub.b\t@\\(0x1234(:16|),r3.w\\),@\\(0x3(:2|),er1\\)" \
	"sub.b @(0x1234:16,r3.w),@(0x3:2,er1)"
gdb_test "x" "sub.b\t@\\(0x1234(:16|),r3.w\\),@-er1" \
	"sub.b @(0x1234:16,r3.w),@-er1"
gdb_test "x" "sub.b\t@\\(0x1234(:16|),r3.w\\),@er1\\+" \
	"sub.b @(0x1234:16,r3.w),@er1+"
gdb_test "x" "sub.b\t@\\(0x1234(:16|),r3.w\\),@er1-" \
	"sub.b @(0x1234:16,r3.w),@er1-"
gdb_test "x" "sub.b\t@\\(0x1234(:16|),r3.w\\),@\\+er1" \
	"sub.b @(0x1234:16,r3.w),@+er1"
gdb_test "x" "sub.b\t@\\(0x1234(:16|),r3.w\\),@\\(0x9abc(:16|),er1\\)" \
	"sub.b @(0x1234:16,r3.w),@(0x9abc:16,er1)"
gdb_test "x" "sub.b\t@\\(0x1234(:16|),r3.w\\),@\\(0x9abcdef0(:32|),er1\\)" \
	"sub.b @(0x1234:16,r3.w),@(0x9abcdef0:32,er1)"
gdb_test "x" "sub.b\t@\\(0x1234(:16|),r3.w\\),@\\(0x9abc(:16|),r2l.b\\)" \
	"sub.b @(0x1234:16,r3.w),@(0x9abc:16,r2l.b)"
gdb_test "x" "sub.b\t@\\(0x1234(:16|),r3.w\\),@\\(0x9abc(:16|),r2.w\\)" \
	"sub.b @(0x1234:16,r3.w),@(0x9abc:16,r2.w)"
gdb_test "x" "sub.b\t@\\(0x1234(:16|),r3.w\\),@\\(0x9abc(:16|),er2.l\\)" \
	"sub.b @(0x1234:16,r3.w),@(0x9abc:16,er2.l)"
gdb_test "x" "sub.b\t@\\(0x1234(:16|),r3.w\\),@\\(0x9abcdef0(:32|),r2l.b\\)" \
	"sub.b @(0x1234:16,r3.w),@(0x9abcdef0:32,r2l.b)"
gdb_test "x" "sub.b\t@\\(0x1234(:16|),r3.w\\),@\\(0x9abcdef0(:32|),r2.w\\)" \
	"sub.b @(0x1234:16,r3.w),@(0x9abcdef0:32,r2.w)"
gdb_test "x" "sub.b\t@\\(0x1234(:16|),r3.w\\),@\\(0x9abcdef0(:32|),er2.l\\)" \
	"sub.b @(0x1234:16,r3.w),@(0x9abcdef0:32,er2.l)"
gdb_test "x" "sub.b\t@\\(0x1234(:16|),r3.w\\),@0x9abc(:16|)" \
	"sub.b @(0x1234:16,r3.w),@0x9abc:16"
gdb_test "x" "sub.b\t@\\(0x1234(:16|),r3.w\\),@0x9abcdef0(:32|)" \
	"sub.b @(0x1234:16,r3.w),@0x9abcdef0:32"
gdb_test "x" "sub.b\t@\\(0x1234(:16|),er3.l\\),@er1" \
	"sub.b @(0x1234:16,er3.l),@er1"
gdb_test "x" "sub.b\t@\\(0x1234(:16|),er3.l\\),@\\(0x3(:2|),er1\\)" \
	"sub.b @(0x1234:16,er3.l),@(0x3:2,er1)"
gdb_test "x" "sub.b\t@\\(0x1234(:16|),er3.l\\),@-er1" \
	"sub.b @(0x1234:16,er3.l),@-er1"
gdb_test "x" "sub.b\t@\\(0x1234(:16|),er3.l\\),@er1\\+" \
	"sub.b @(0x1234:16,er3.l),@er1+"
gdb_test "x" "sub.b\t@\\(0x1234(:16|),er3.l\\),@er1-" \
	"sub.b @(0x1234:16,er3.l),@er1-"
gdb_test "x" "sub.b\t@\\(0x1234(:16|),er3.l\\),@\\+er1" \
	"sub.b @(0x1234:16,er3.l),@+er1"
gdb_test "x" "sub.b\t@\\(0x1234(:16|),er3.l\\),@\\(0x9abc(:16|),er1\\)" \
	"sub.b @(0x1234:16,er3.l),@(0x9abc:16,er1)"
gdb_test "x" "sub.b\t@\\(0x1234(:16|),er3.l\\),@\\(0x9abcdef0(:32|),er1\\)" \
	"sub.b @(0x1234:16,er3.l),@(0x9abcdef0:32,er1)"
gdb_test "x" "sub.b\t@\\(0x1234(:16|),er3.l\\),@\\(0x9abc(:16|),r2l.b\\)" \
	"sub.b @(0x1234:16,er3.l),@(0x9abc:16,r2l.b)"
gdb_test "x" "sub.b\t@\\(0x1234(:16|),er3.l\\),@\\(0x9abc(:16|),r2.w\\)" \
	"sub.b @(0x1234:16,er3.l),@(0x9abc:16,r2.w)"
gdb_test "x" "sub.b\t@\\(0x1234(:16|),er3.l\\),@\\(0x9abc(:16|),er2.l\\)" \
	"sub.b @(0x1234:16,er3.l),@(0x9abc:16,er2.l)"
gdb_test "x" "sub.b\t@\\(0x1234(:16|),er3.l\\),@\\(0x9abcdef0(:32|),r2l.b\\)" \
	"sub.b @(0x1234:16,er3.l),@(0x9abcdef0:32,r2l.b)"
gdb_test "x" "sub.b\t@\\(0x1234(:16|),er3.l\\),@\\(0x9abcdef0(:32|),r2.w\\)" \
	"sub.b @(0x1234:16,er3.l),@(0x9abcdef0:32,r2.w)"
gdb_test "x" "sub.b\t@\\(0x1234(:16|),er3.l\\),@\\(0x9abcdef0(:32|),er2.l\\)" \
	"sub.b @(0x1234:16,er3.l),@(0x9abcdef0:32,er2.l)"
gdb_test "x" "sub.b\t@\\(0x1234(:16|),er3.l\\),@0x9abc(:16|)" \
	"sub.b @(0x1234:16,er3.l),@0x9abc:16"
gdb_test "x" "sub.b\t@\\(0x1234(:16|),er3.l\\),@0x9abcdef0(:32|)" \
	"sub.b @(0x1234:16,er3.l),@0x9abcdef0:32"
gdb_test "x" "sub.b\t@\\(0x12345678(:32|),r3l.b\\),@er1" \
	"sub.b @(0x12345678:32,r3l.b),@er1"
gdb_test "x" "sub.b\t@\\(0x12345678(:32|),r3l.b\\),@\\(0x3(:2|),er1\\)" \
	"sub.b @(0x12345678:32,r3l.b),@(0x3:2,er1)"
gdb_test "x" "sub.b\t@\\(0x12345678(:32|),r3l.b\\),@-er1" \
	"sub.b @(0x12345678:32,r3l.b),@-er1"
gdb_test "x" "sub.b\t@\\(0x12345678(:32|),r3l.b\\),@er1\\+" \
	"sub.b @(0x12345678:32,r3l.b),@er1+"
gdb_test "x" "sub.b\t@\\(0x12345678(:32|),r3l.b\\),@er1-" \
	"sub.b @(0x12345678:32,r3l.b),@er1-"
gdb_test "x" "sub.b\t@\\(0x12345678(:32|),r3l.b\\),@\\+er1" \
	"sub.b @(0x12345678:32,r3l.b),@+er1"
gdb_test "x" "sub.b\t@\\(0x12345678(:32|),r3l.b\\),@\\(0x9abc(:16|),er1\\)" \
	"sub.b @(0x12345678:32,r3l.b),@(0x9abc:16,er1)"
gdb_test "x" "sub.b\t@\\(0x12345678(:32|),r3l.b\\),@\\(0x9abcdef0(:32|),er1\\)" \
	"sub.b @(0x12345678:32,r3l.b),@(0x9abcdef0:32,er1)"
gdb_test "x" "sub.b\t@\\(0x12345678(:32|),r3l.b\\),@\\(0x9abc(:16|),r2l.b\\)" \
	"sub.b @(0x12345678:32,r3l.b),@(0x9abc:16,r2l.b)"
gdb_test "x" "sub.b\t@\\(0x12345678(:32|),r3l.b\\),@\\(0x9abc(:16|),r2.w\\)" \
	"sub.b @(0x12345678:32,r3l.b),@(0x9abc:16,r2.w)"
gdb_test "x" "sub.b\t@\\(0x12345678(:32|),r3l.b\\),@\\(0x9abc(:16|),er2.l\\)" \
	"sub.b @(0x12345678:32,r3l.b),@(0x9abc:16,er2.l)"
gdb_test "x" "sub.b\t@\\(0x12345678(:32|),r3l.b\\),@\\(0x9abcdef0(:32|),r2l.b\\)" \
	"sub.b @(0x12345678:32,r3l.b),@(0x9abcdef0:32,r2l.b)"
gdb_test "x" "sub.b\t@\\(0x12345678(:32|),r3l.b\\),@\\(0x9abcdef0(:32|),r2.w\\)" \
	"sub.b @(0x12345678:32,r3l.b),@(0x9abcdef0:32,r2.w)"
gdb_test "x" "sub.b\t@\\(0x12345678(:32|),r3l.b\\),@\\(0x9abcdef0(:32|),er2.l\\)" \
	"sub.b @(0x12345678:32,r3l.b),@(0x9abcdef0:32,er2.l)"
gdb_test "x" "sub.b\t@\\(0x12345678(:32|),r3l.b\\),@0x9abc(:16|)" \
	"sub.b @(0x12345678:32,r3l.b),@0x9abc:16"
gdb_test "x" "sub.b\t@\\(0x12345678(:32|),r3l.b\\),@0x9abcdef0(:32|)" \
	"sub.b @(0x12345678:32,r3l.b),@0x9abcdef0:32"
gdb_test "x" "sub.b\t@\\(0x12345678(:32|),r3.w\\),@er1" \
	"sub.b @(0x12345678:32,r3.w),@er1"
gdb_test "x" "sub.b\t@\\(0x12345678(:32|),r3.w\\),@\\(0x3(:2|),er1\\)" \
	"sub.b @(0x12345678:32,r3.w),@(0x3:2,er1)"
gdb_test "x" "sub.b\t@\\(0x12345678(:32|),r3.w\\),@-er1" \
	"sub.b @(0x12345678:32,r3.w),@-er1"
gdb_test "x" "sub.b\t@\\(0x12345678(:32|),r3.w\\),@er1\\+" \
	"sub.b @(0x12345678:32,r3.w),@er1+"
gdb_test "x" "sub.b\t@\\(0x12345678(:32|),r3.w\\),@er1-" \
	"sub.b @(0x12345678:32,r3.w),@er1-"
gdb_test "x" "sub.b\t@\\(0x12345678(:32|),r3.w\\),@\\+er1" \
	"sub.b @(0x12345678:32,r3.w),@+er1"
gdb_test "x" "sub.b\t@\\(0x12345678(:32|),r3.w\\),@\\(0x9abc(:16|),er1\\)" \
	"sub.b @(0x12345678:32,r3.w),@(0x9abc:16,er1)"
gdb_test "x" "sub.b\t@\\(0x12345678(:32|),r3.w\\),@\\(0x9abcdef0(:32|),er1\\)" \
	"sub.b @(0x12345678:32,r3.w),@(0x9abcdef0:32,er1)"
gdb_test "x" "sub.b\t@\\(0x12345678(:32|),r3.w\\),@\\(0x9abc(:16|),r2l.b\\)" \
	"sub.b @(0x12345678:32,r3.w),@(0x9abc:16,r2l.b)"
gdb_test "x" "sub.b\t@\\(0x12345678(:32|),r3.w\\),@\\(0x9abc(:16|),r2.w\\)" \
	"sub.b @(0x12345678:32,r3.w),@(0x9abc:16,r2.w)"
gdb_test "x" "sub.b\t@\\(0x12345678(:32|),r3.w\\),@\\(0x9abc(:16|),er2.l\\)" \
	"sub.b @(0x12345678:32,r3.w),@(0x9abc:16,er2.l)"
gdb_test "x" "sub.b\t@\\(0x12345678(:32|),r3.w\\),@\\(0x9abcdef0(:32|),r2l.b\\)" \
	"sub.b @(0x12345678:32,r3.w),@(0x9abcdef0:32,r2l.b)"
gdb_test "x" "sub.b\t@\\(0x12345678(:32|),r3.w\\),@\\(0x9abcdef0(:32|),r2.w\\)" \
	"sub.b @(0x12345678:32,r3.w),@(0x9abcdef0:32,r2.w)"
gdb_test "x" "sub.b\t@\\(0x12345678(:32|),r3.w\\),@\\(0x9abcdef0(:32|),er2.l\\)" \
	"sub.b @(0x12345678:32,r3.w),@(0x9abcdef0:32,er2.l)"
gdb_test "x" "sub.b\t@\\(0x12345678(:32|),r3.w\\),@0x9abc(:16|)" \
	"sub.b @(0x12345678:32,r3.w),@0x9abc:16"
gdb_test "x" "sub.b\t@\\(0x12345678(:32|),r3.w\\),@0x9abcdef0(:32|)" \
	"sub.b @(0x12345678:32,r3.w),@0x9abcdef0:32"
gdb_test "x" "sub.b\t@\\(0x12345678(:32|),er3.l\\),@er1" \
	"sub.b @(0x12345678:32,er3.l),@er1"
gdb_test "x" "sub.b\t@\\(0x12345678(:32|),er3.l\\),@\\(0x3(:2|),er1\\)" \
	"sub.b @(0x12345678:32,er3.l),@(0x3:2,er1)"
gdb_test "x" "sub.b\t@\\(0x12345678(:32|),er3.l\\),@-er1" \
	"sub.b @(0x12345678:32,er3.l),@-er1"
gdb_test "x" "sub.b\t@\\(0x12345678(:32|),er3.l\\),@er1\\+" \
	"sub.b @(0x12345678:32,er3.l),@er1+"
gdb_test "x" "sub.b\t@\\(0x12345678(:32|),er3.l\\),@er1-" \
	"sub.b @(0x12345678:32,er3.l),@er1-"
gdb_test "x" "sub.b\t@\\(0x12345678(:32|),er3.l\\),@\\+er1" \
	"sub.b @(0x12345678:32,er3.l),@+er1"
gdb_test "x" "sub.b\t@\\(0x12345678(:32|),er3.l\\),@\\(0x9abc(:16|),er1\\)" \
	"sub.b @(0x12345678:32,er3.l),@(0x9abc:16,er1)"
gdb_test "x" "sub.b\t@\\(0x12345678(:32|),er3.l\\),@\\(0x9abcdef0(:32|),er1\\)" \
	"sub.b @(0x12345678:32,er3.l),@(0x9abcdef0:32,er1)"
gdb_test "x" "sub.b\t@\\(0x12345678(:32|),er3.l\\),@\\(0x9abc(:16|),r2l.b\\)" \
	"sub.b @(0x12345678:32,er3.l),@(0x9abc:16,r2l.b)"
gdb_test "x" "sub.b\t@\\(0x12345678(:32|),er3.l\\),@\\(0x9abc(:16|),r2.w\\)" \
	"sub.b @(0x12345678:32,er3.l),@(0x9abc:16,r2.w)"
gdb_test "x" "sub.b\t@\\(0x12345678(:32|),er3.l\\),@\\(0x9abc(:16|),er2.l\\)" \
	"sub.b @(0x12345678:32,er3.l),@(0x9abc:16,er2.l)"
gdb_test "x" "sub.b\t@\\(0x12345678(:32|),er3.l\\),@\\(0x9abcdef0(:32|),r2l.b\\)" \
	"sub.b @(0x12345678:32,er3.l),@(0x9abcdef0:32,r2l.b)"
gdb_test "x" "sub.b\t@\\(0x12345678(:32|),er3.l\\),@\\(0x9abcdef0(:32|),r2.w\\)" \
	"sub.b @(0x12345678:32,er3.l),@(0x9abcdef0:32,r2.w)"
gdb_test "x" "sub.b\t@\\(0x12345678(:32|),er3.l\\),@\\(0x9abcdef0(:32|),er2.l\\)" \
	"sub.b @(0x12345678:32,er3.l),@(0x9abcdef0:32,er2.l)"
gdb_test "x" "sub.b\t@\\(0x12345678(:32|),er3.l\\),@0x9abc(:16|)" \
	"sub.b @(0x12345678:32,er3.l),@0x9abc:16"
gdb_test "x" "sub.b\t@\\(0x12345678(:32|),er3.l\\),@0x9abcdef0(:32|)" \
	"sub.b @(0x12345678:32,er3.l),@0x9abcdef0:32"
gdb_test "x" "sub.b\t@0x1234(:16|),@er1" \
	"sub.b @0x1234:16,@er1"
gdb_test "x" "sub.b\t@0x1234(:16|),@\\(0x3(:2|),er1\\)" \
	"sub.b @0x1234:16,@(0x3:2,er1)"
gdb_test "x" "sub.b\t@0x1234(:16|),@-er1" \
	"sub.b @0x1234:16,@-er1"
gdb_test "x" "sub.b\t@0x1234(:16|),@er1\\+" \
	"sub.b @0x1234:16,@er1+"
gdb_test "x" "sub.b\t@0x1234(:16|),@er1-" \
	"sub.b @0x1234:16,@er1-"
gdb_test "x" "sub.b\t@0x1234(:16|),@\\+er1" \
	"sub.b @0x1234:16,@+er1"
gdb_test "x" "sub.b\t@0x1234(:16|),@\\(0x9abc(:16|),er1\\)" \
	"sub.b @0x1234:16,@(0x9abc:16,er1)"
gdb_test "x" "sub.b\t@0x1234(:16|),@\\(0x9abcdef0(:32|),er1\\)" \
	"sub.b @0x1234:16,@(0x9abcdef0:32,er1)"
gdb_test "x" "sub.b\t@0x1234(:16|),@\\(0x9abc(:16|),r2l.b\\)" \
	"sub.b @0x1234:16,@(0x9abc:16,r2l.b)"
gdb_test "x" "sub.b\t@0x1234(:16|),@\\(0x9abc(:16|),r2.w\\)" \
	"sub.b @0x1234:16,@(0x9abc:16,r2.w)"
gdb_test "x" "sub.b\t@0x1234(:16|),@\\(0x9abc(:16|),er2.l\\)" \
	"sub.b @0x1234:16,@(0x9abc:16,er2.l)"
gdb_test "x" "sub.b\t@0x1234(:16|),@\\(0x9abcdef0(:32|),r2l.b\\)" \
	"sub.b @0x1234:16,@(0x9abcdef0:32,r2l.b)"
gdb_test "x" "sub.b\t@0x1234(:16|),@\\(0x9abcdef0(:32|),r2.w\\)" \
	"sub.b @0x1234:16,@(0x9abcdef0:32,r2.w)"
gdb_test "x" "sub.b\t@0x1234(:16|),@\\(0x9abcdef0(:32|),er2.l\\)" \
	"sub.b @0x1234:16,@(0x9abcdef0:32,er2.l)"
gdb_test "x" "sub.b\t@0x1234(:16|),@0x9abc(:16|)" \
	"sub.b @0x1234:16,@0x9abc:16"
gdb_test "x" "sub.b\t@0x1234(:16|),@0x9abcdef0(:32|)" \
	"sub.b @0x1234:16,@0x9abcdef0:32"
gdb_test "x" "sub.b\t@0x12345678(:32|),@er1" \
	"sub.b @0x12345678:32,@er1"
gdb_test "x" "sub.b\t@0x12345678(:32|),@\\(0x3(:2|),er1\\)" \
	"sub.b @0x12345678:32,@(0x3:2,er1)"
gdb_test "x" "sub.b\t@0x12345678(:32|),@-er1" \
	"sub.b @0x12345678:32,@-er1"
gdb_test "x" "sub.b\t@0x12345678(:32|),@er1\\+" \
	"sub.b @0x12345678:32,@er1+"
gdb_test "x" "sub.b\t@0x12345678(:32|),@er1-" \
	"sub.b @0x12345678:32,@er1-"
gdb_test "x" "sub.b\t@0x12345678(:32|),@\\+er1" \
	"sub.b @0x12345678:32,@+er1"
gdb_test "x" "sub.b\t@0x12345678(:32|),@\\(0x9abc(:16|),er1\\)" \
	"sub.b @0x12345678:32,@(0x9abc:16,er1)"
gdb_test "x" "sub.b\t@0x12345678(:32|),@\\(0x9abcdef0(:32|),er1\\)" \
	"sub.b @0x12345678:32,@(0x9abcdef0:32,er1)"
gdb_test "x" "sub.b\t@0x12345678(:32|),@\\(0x9abc(:16|),r2l.b\\)" \
	"sub.b @0x12345678:32,@(0x9abc:16,r2l.b)"
gdb_test "x" "sub.b\t@0x12345678(:32|),@\\(0x9abc(:16|),r2.w\\)" \
	"sub.b @0x12345678:32,@(0x9abc:16,r2.w)"
gdb_test "x" "sub.b\t@0x12345678(:32|),@\\(0x9abc(:16|),er2.l\\)" \
	"sub.b @0x12345678:32,@(0x9abc:16,er2.l)"
gdb_test "x" "sub.b\t@0x12345678(:32|),@\\(0x9abcdef0(:32|),r2l.b\\)" \
	"sub.b @0x12345678:32,@(0x9abcdef0:32,r2l.b)"
gdb_test "x" "sub.b\t@0x12345678(:32|),@\\(0x9abcdef0(:32|),r2.w\\)" \
	"sub.b @0x12345678:32,@(0x9abcdef0:32,r2.w)"
gdb_test "x" "sub.b\t@0x12345678(:32|),@\\(0x9abcdef0(:32|),er2.l\\)" \
	"sub.b @0x12345678:32,@(0x9abcdef0:32,er2.l)"
gdb_test "x" "sub.b\t@0x12345678(:32|),@0x9abc(:16|)" \
	"sub.b @0x12345678:32,@0x9abc:16"
gdb_test "x" "sub.b\t@0x12345678(:32|),@0x9abcdef0(:32|)" \
	"sub.b @0x12345678:32,@0x9abcdef0:32"
gdb_test "x" "sub.w\t#0x1234(:16|),r1" \
	"sub.w #0x1234:16,r1"
gdb_test "x" "sub.w\t#0x7(:3|),r2" \
	"sub.w #0x7:3,r2"
gdb_test "x" "sub.w\t#0x1234(:16|),@er1" \
	"sub.w #0x1234:16,@er1"
gdb_test "x" "sub.w\t#0x1234(:16|),@\\(0x6(:2|),er1\\)" \
	"sub.w #0x1234:16,@(0x6:2,er1)"
gdb_test "x" "sub.w\t#0x1234(:16|),@er1\\+" \
	"sub.w #0x1234:16,@er1+"
gdb_test "x" "sub.w\t#0x1234(:16|),@-er1" \
	"sub.w #0x1234:16,@-er1"
gdb_test "x" "sub.w\t#0x1234(:16|),@\\+er1" \
	"sub.w #0x1234:16,@+er1"
gdb_test "x" "sub.w\t#0x1234(:16|),@er1-" \
	"sub.w #0x1234:16,@er1-"
gdb_test "x" "sub.w\t#0x1234(:16|),@\\(0x9abc(:16|),er1\\)" \
	"sub.w #0x1234:16,@(0x9abc:16,er1)"
gdb_test "x" "sub.w\t#0x1234(:16|),@\\(0x9abcdef0(:32|),er1\\)" \
	"sub.w #0x1234:16,@(0x9abcdef0:32,er1)"
gdb_test "x" "sub.w\t#0x1234(:16|),@\\(0x9abc(:16|),r2l.b\\)" \
	"sub.w #0x1234:16,@(0x9abc:16,r2l.b)"
gdb_test "x" "sub.w\t#0x1234(:16|),@\\(0x9abc(:16|),r2.w\\)" \
	"sub.w #0x1234:16,@(0x9abc:16,r2.w)"
gdb_test "x" "sub.w\t#0x1234(:16|),@\\(0x9abc(:16|),er2.l\\)" \
	"sub.w #0x1234:16,@(0x9abc:16,er2.l)"
gdb_test "x" "sub.w\t#0x1234(:16|),@\\(0x9abcdef0(:32|),r2l.b\\)" \
	"sub.w #0x1234:16,@(0x9abcdef0:32,r2l.b)"
gdb_test "x" "sub.w\t#0x1234(:16|),@\\(0x9abcdef0(:32|),r2.w\\)" \
	"sub.w #0x1234:16,@(0x9abcdef0:32,r2.w)"
gdb_test "x" "sub.w\t#0x1234(:16|),@\\(0x9abcdef0(:32|),er2.l\\)" \
	"sub.w #0x1234:16,@(0x9abcdef0:32,er2.l)"
gdb_test "x" "sub.w\t#0x1234(:16|),@0x9abc(:16|)" \
	"sub.w #0x1234:16,@0x9abc:16"
gdb_test "x" "sub.w\t#0x1234(:16|),@0x9abcdef0(:32|)" \
	"sub.w #0x1234:16,@0x9abcdef0:32"
gdb_test "x" "sub.w\t#0x7(:3|),@er1" \
	"sub.w #0x7:3,@er1"
gdb_test "x" "sub.w\t#0x7(:3|),@0x1234(:16|)" \
	"sub.w #0x7:3,@0x1234:16"
gdb_test "x" "sub.w\t#0x7(:3|),@0x12345678(:32|)" \
	"sub.w #0x7:3,@0x12345678:32"
gdb_test "x" "sub.w\tr3,r1" \
	"sub.w r3,r1"
gdb_test "x" "sub.w\tr3,@er1" \
	"sub.w r3,@er1"
gdb_test "x" "sub.w\tr3,@\\(0x6(:2|),er1\\)" \
	"sub.w r3,@(0x6:2,er1)"
gdb_test "x" "sub.w\tr3,@er1\\+" \
	"sub.w r3,@er1+"
gdb_test "x" "sub.w\tr3,@-er1" \
	"sub.w r3,@-er1"
gdb_test "x" "sub.w\tr3,@\\+er1" \
	"sub.w r3,@+er1"
gdb_test "x" "sub.w\tr3,@er1-" \
	"sub.w r3,@er1-"
gdb_test "x" "sub.w\tr3,@\\(0x1234(:16|),er1\\)" \
	"sub.w r3,@(0x1234:16,er1)"
gdb_test "x" "sub.w\tr3,@\\(0x12345678(:32|),er1\\)" \
	"sub.w r3,@(0x12345678:32,er1)"
gdb_test "x" "sub.w\tr3,@\\(0x1234(:16|),r2l.b\\)" \
	"sub.w r3,@(0x1234:16,r2l.b)"
gdb_test "x" "sub.w\tr3,@\\(0x1234(:16|),r2.w\\)" \
	"sub.w r3,@(0x1234:16,r2.w)"
gdb_test "x" "sub.w\tr3,@\\(0x1234(:16|),er2.l\\)" \
	"sub.w r3,@(0x1234:16,er2.l)"
gdb_test "x" "sub.w\tr3,@\\(0x12345678(:32|),r2l.b\\)" \
	"sub.w r3,@(0x12345678:32,r2l.b)"
gdb_test "x" "sub.w\tr3,@\\(0x12345678(:32|),r2.w\\)" \
	"sub.w r3,@(0x12345678:32,r2.w)"
gdb_test "x" "sub.w\tr3,@\\(0x12345678(:32|),er2.l\\)" \
	"sub.w r3,@(0x12345678:32,er2.l)"
gdb_test "x" "sub.w\tr3,@0x1234(:16|)" \
	"sub.w r3,@0x1234:16"
gdb_test "x" "sub.w\tr3,@0x12345678(:32|)" \
	"sub.w r3,@0x12345678:32"
gdb_test "x" "sub.w\t@er3,r1" \
	"sub.w @er3,r1"
gdb_test "x" "sub.w\t@\\(0x6(:2|),er3\\),r1" \
	"sub.w @(0x6:2,er3),r1"
gdb_test "x" "sub.w\t@er3\\+,r1" \
	"sub.w @er3+,r1"
gdb_test "x" "sub.w\t@-er3,r1" \
	"sub.w @-er3,r1"
gdb_test "x" "sub.w\t@\\+er3,r1" \
	"sub.w @+er3,r1"
gdb_test "x" "sub.w\t@er3-,r1" \
	"sub.w @er3-,r1"
gdb_test "x" "sub.w\t@\\(0x1234(:16|),er1\\),r1" \
	"sub.w @(0x1234:16,er1),r1"
gdb_test "x" "sub.w\t@\\(0x12345678(:32|),er1\\),r1" \
	"sub.w @(0x12345678:32,er1),r1"
gdb_test "x" "sub.w\t@\\(0x1234(:16|),r2l.b\\),r1" \
	"sub.w @(0x1234:16,r2l.b),r1"
gdb_test "x" "sub.w\t@\\(0x1234(:16|),r2.w\\),r1" \
	"sub.w @(0x1234:16,r2.w),r1"
gdb_test "x" "sub.w\t@\\(0x1234(:16|),er2.l\\),r1" \
	"sub.w @(0x1234:16,er2.l),r1"
gdb_test "x" "sub.w\t@\\(0x12345678(:32|),r2l.b\\),r1" \
	"sub.w @(0x12345678:32,r2l.b),r1"
gdb_test "x" "sub.w\t@\\(0x12345678(:32|),r2.w\\),r1" \
	"sub.w @(0x12345678:32,r2.w),r1"
gdb_test "x" "sub.w\t@\\(0x12345678(:32|),er2.l\\),r1" \
	"sub.w @(0x12345678:32,er2.l),r1"
gdb_test "x" "sub.w\t@0x1234(:16|),r1" \
	"sub.w @0x1234:16,r1"
gdb_test "x" "sub.w\t@0x12345678(:32|),r1" \
	"sub.w @0x12345678:32,r1"
gdb_test "x" "sub.w\t@er3,@er1" \
	"sub.w @er3,@er1"
gdb_test "x" "sub.w\t@er3,@\\(0x6(:2|),er1\\)" \
	"sub.w @er3,@(0x6:2,er1)"
gdb_test "x" "sub.w\t@er3,@-er1" \
	"sub.w @er3,@-er1"
gdb_test "x" "sub.w\t@er3,@er1\\+" \
	"sub.w @er3,@er1+"
gdb_test "x" "sub.w\t@er3,@er1-" \
	"sub.w @er3,@er1-"
gdb_test "x" "sub.w\t@er3,@\\+er1" \
	"sub.w @er3,@+er1"
gdb_test "x" "sub.w\t@er3,@\\(0x9abc(:16|),er1\\)" \
	"sub.w @er3,@(0x9abc:16,er1)"
gdb_test "x" "sub.w\t@er3,@\\(0x9abcdef0(:32|),er1\\)" \
	"sub.w @er3,@(0x9abcdef0:32,er1)"
gdb_test "x" "sub.w\t@er3,@\\(0x9abc(:16|),r2l.b\\)" \
	"sub.w @er3,@(0x9abc:16,r2l.b)"
gdb_test "x" "sub.w\t@er3,@\\(0x9abc(:16|),r2.w\\)" \
	"sub.w @er3,@(0x9abc:16,r2.w)"
gdb_test "x" "sub.w\t@er3,@\\(0x9abc(:16|),er2.l\\)" \
	"sub.w @er3,@(0x9abc:16,er2.l)"
gdb_test "x" "sub.w\t@er3,@\\(0x9abcdef0(:32|),r2l.b\\)" \
	"sub.w @er3,@(0x9abcdef0:32,r2l.b)"
gdb_test "x" "sub.w\t@er3,@\\(0x9abcdef0(:32|),r2.w\\)" \
	"sub.w @er3,@(0x9abcdef0:32,r2.w)"
gdb_test "x" "sub.w\t@er3,@\\(0x9abcdef0(:32|),er2.l\\)" \
	"sub.w @er3,@(0x9abcdef0:32,er2.l)"
gdb_test "x" "sub.w\t@er3,@0x9abc(:16|)" \
	"sub.w @er3,@0x9abc:16"
gdb_test "x" "sub.w\t@er3,@0x9abcdef0(:32|)" \
	"sub.w @er3,@0x9abcdef0:32"
gdb_test "x" "sub.w\t@-er3,@er1" \
	"sub.w @-er3,@er1"
gdb_test "x" "sub.w\t@-er3,@\\(0x6(:2|),er1\\)" \
	"sub.w @-er3,@(0x6:2,er1)"
gdb_test "x" "sub.w\t@-er3,@-er1" \
	"sub.w @-er3,@-er1"
gdb_test "x" "sub.w\t@-er3,@er1\\+" \
	"sub.w @-er3,@er1+"
gdb_test "x" "sub.w\t@-er3,@er1-" \
	"sub.w @-er3,@er1-"
gdb_test "x" "sub.w\t@-er3,@\\+er1" \
	"sub.w @-er3,@+er1"
gdb_test "x" "sub.w\t@-er3,@\\(0x9abc(:16|),er1\\)" \
	"sub.w @-er3,@(0x9abc:16,er1)"
gdb_test "x" "sub.w\t@-er3,@\\(0x9abcdef0(:32|),er1\\)" \
	"sub.w @-er3,@(0x9abcdef0:32,er1)"
gdb_test "x" "sub.w\t@-er3,@\\(0x9abc(:16|),r2l.b\\)" \
	"sub.w @-er3,@(0x9abc:16,r2l.b)"
gdb_test "x" "sub.w\t@-er3,@\\(0x9abc(:16|),r2.w\\)" \
	"sub.w @-er3,@(0x9abc:16,r2.w)"
gdb_test "x" "sub.w\t@-er3,@\\(0x9abc(:16|),er2.l\\)" \
	"sub.w @-er3,@(0x9abc:16,er2.l)"
gdb_test "x" "sub.w\t@-er3,@\\(0x9abcdef0(:32|),r2l.b\\)" \
	"sub.w @-er3,@(0x9abcdef0:32,r2l.b)"
gdb_test "x" "sub.w\t@-er3,@\\(0x9abcdef0(:32|),r2.w\\)" \
	"sub.w @-er3,@(0x9abcdef0:32,r2.w)"
gdb_test "x" "sub.w\t@-er3,@\\(0x9abcdef0(:32|),er2.l\\)" \
	"sub.w @-er3,@(0x9abcdef0:32,er2.l)"
gdb_test "x" "sub.w\t@-er3,@0x9abc(:16|)" \
	"sub.w @-er3,@0x9abc:16"
gdb_test "x" "sub.w\t@-er3,@0x9abcdef0(:32|)" \
	"sub.w @-er3,@0x9abcdef0:32"
gdb_test "x" "sub.w\t@er3\\+,@er1" \
	"sub.w @er3+,@er1"
gdb_test "x" "sub.w\t@er3\\+,@\\(0x6(:2|),er1\\)" \
	"sub.w @er3+,@(0x6:2,er1)"
gdb_test "x" "sub.w\t@er3\\+,@-er1" \
	"sub.w @er3+,@-er1"
gdb_test "x" "sub.w\t@er3\\+,@er1\\+" \
	"sub.w @er3+,@er1+"
gdb_test "x" "sub.w\t@er3\\+,@er1-" \
	"sub.w @er3+,@er1-"
gdb_test "x" "sub.w\t@er3\\+,@\\+er1" \
	"sub.w @er3+,@+er1"
gdb_test "x" "sub.w\t@er3\\+,@\\(0x9abc(:16|),er1\\)" \
	"sub.w @er3+,@(0x9abc:16,er1)"
gdb_test "x" "sub.w\t@er3\\+,@\\(0x9abcdef0(:32|),er1\\)" \
	"sub.w @er3+,@(0x9abcdef0:32,er1)"
gdb_test "x" "sub.w\t@er3\\+,@\\(0x9abc(:16|),r2l.b\\)" \
	"sub.w @er3+,@(0x9abc:16,r2l.b)"
gdb_test "x" "sub.w\t@er3\\+,@\\(0x9abc(:16|),r2.w\\)" \
	"sub.w @er3+,@(0x9abc:16,r2.w)"
gdb_test "x" "sub.w\t@er3\\+,@\\(0x9abc(:16|),er2.l\\)" \
	"sub.w @er3+,@(0x9abc:16,er2.l)"
gdb_test "x" "sub.w\t@er3\\+,@\\(0x9abcdef0(:32|),r2l.b\\)" \
	"sub.w @er3+,@(0x9abcdef0:32,r2l.b)"
gdb_test "x" "sub.w\t@er3\\+,@\\(0x9abcdef0(:32|),r2.w\\)" \
	"sub.w @er3+,@(0x9abcdef0:32,r2.w)"
gdb_test "x" "sub.w\t@er3\\+,@\\(0x9abcdef0(:32|),er2.l\\)" \
	"sub.w @er3+,@(0x9abcdef0:32,er2.l)"
gdb_test "x" "sub.w\t@er3\\+,@0x9abc(:16|)" \
	"sub.w @er3+,@0x9abc:16"
gdb_test "x" "sub.w\t@er3\\+,@0x9abcdef0(:32|)" \
	"sub.w @er3+,@0x9abcdef0:32"
gdb_test "x" "sub.w\t@er3-,@er1" \
	"sub.w @er3-,@er1"
gdb_test "x" "sub.w\t@er3-,@\\(0x6(:2|),er1\\)" \
	"sub.w @er3-,@(0x6:2,er1)"
gdb_test "x" "sub.w\t@er3-,@-er1" \
	"sub.w @er3-,@-er1"
gdb_test "x" "sub.w\t@er3-,@er1\\+" \
	"sub.w @er3-,@er1+"
gdb_test "x" "sub.w\t@er3-,@er1-" \
	"sub.w @er3-,@er1-"
gdb_test "x" "sub.w\t@er3-,@\\+er1" \
	"sub.w @er3-,@+er1"
gdb_test "x" "sub.w\t@er3-,@\\(0x9abc(:16|),er1\\)" \
	"sub.w @er3-,@(0x9abc:16,er1)"
gdb_test "x" "sub.w\t@er3-,@\\(0x9abcdef0(:32|),er1\\)" \
	"sub.w @er3-,@(0x9abcdef0:32,er1)"
gdb_test "x" "sub.w\t@er3-,@\\(0x9abc(:16|),r2l.b\\)" \
	"sub.w @er3-,@(0x9abc:16,r2l.b)"
gdb_test "x" "sub.w\t@er3-,@\\(0x9abc(:16|),r2.w\\)" \
	"sub.w @er3-,@(0x9abc:16,r2.w)"
gdb_test "x" "sub.w\t@er3-,@\\(0x9abc(:16|),er2.l\\)" \
	"sub.w @er3-,@(0x9abc:16,er2.l)"
gdb_test "x" "sub.w\t@er3-,@\\(0x9abcdef0(:32|),r2l.b\\)" \
	"sub.w @er3-,@(0x9abcdef0:32,r2l.b)"
gdb_test "x" "sub.w\t@er3-,@\\(0x9abcdef0(:32|),r2.w\\)" \
	"sub.w @er3-,@(0x9abcdef0:32,r2.w)"
gdb_test "x" "sub.w\t@er3-,@\\(0x9abcdef0(:32|),er2.l\\)" \
	"sub.w @er3-,@(0x9abcdef0:32,er2.l)"
gdb_test "x" "sub.w\t@er3-,@0x9abc(:16|)" \
	"sub.w @er3-,@0x9abc:16"
gdb_test "x" "sub.w\t@er3-,@0x9abcdef0(:32|)" \
	"sub.w @er3-,@0x9abcdef0:32"
gdb_test "x" "sub.w\t@\\+er3,@er1" \
	"sub.w @+er3,@er1"
gdb_test "x" "sub.w\t@\\+er3,@\\(0x6(:2|),er1\\)" \
	"sub.w @+er3,@(0x6:2,er1)"
gdb_test "x" "sub.w\t@\\+er3,@-er1" \
	"sub.w @+er3,@-er1"
gdb_test "x" "sub.w\t@\\+er3,@er1\\+" \
	"sub.w @+er3,@er1+"
gdb_test "x" "sub.w\t@\\+er3,@er1-" \
	"sub.w @+er3,@er1-"
gdb_test "x" "sub.w\t@\\+er3,@\\+er1" \
	"sub.w @+er3,@+er1"
gdb_test "x" "sub.w\t@\\+er3,@\\(0x9abc(:16|),er1\\)" \
	"sub.w @+er3,@(0x9abc:16,er1)"
gdb_test "x" "sub.w\t@\\+er3,@\\(0x9abcdef0(:32|),er1\\)" \
	"sub.w @+er3,@(0x9abcdef0:32,er1)"
gdb_test "x" "sub.w\t@\\+er3,@\\(0x9abc(:16|),r2l.b\\)" \
	"sub.w @+er3,@(0x9abc:16,r2l.b)"
gdb_test "x" "sub.w\t@\\+er3,@\\(0x9abc(:16|),r2.w\\)" \
	"sub.w @+er3,@(0x9abc:16,r2.w)"
gdb_test "x" "sub.w\t@\\+er3,@\\(0x9abc(:16|),er2.l\\)" \
	"sub.w @+er3,@(0x9abc:16,er2.l)"
gdb_test "x" "sub.w\t@\\+er3,@\\(0x9abcdef0(:32|),r2l.b\\)" \
	"sub.w @+er3,@(0x9abcdef0:32,r2l.b)"
gdb_test "x" "sub.w\t@\\+er3,@\\(0x9abcdef0(:32|),r2.w\\)" \
	"sub.w @+er3,@(0x9abcdef0:32,r2.w)"
gdb_test "x" "sub.w\t@\\+er3,@\\(0x9abcdef0(:32|),er2.l\\)" \
	"sub.w @+er3,@(0x9abcdef0:32,er2.l)"
gdb_test "x" "sub.w\t@\\+er3,@0x9abc(:16|)" \
	"sub.w @+er3,@0x9abc:16"
gdb_test "x" "sub.w\t@\\+er3,@0x9abcdef0(:32|)" \
	"sub.w @+er3,@0x9abcdef0:32"
gdb_test "x" "sub.w\t@\\(0x1234(:16|),er3\\),@er1" \
	"sub.w @(0x1234:16,er3),@er1"
gdb_test "x" "sub.w\t@\\(0x1234(:16|),er3\\),@\\(0x6(:2|),er1\\)" \
	"sub.w @(0x1234:16,er3),@(0x6:2,er1)"
gdb_test "x" "sub.w\t@\\(0x1234(:16|),er3\\),@-er1" \
	"sub.w @(0x1234:16,er3),@-er1"
gdb_test "x" "sub.w\t@\\(0x1234(:16|),er3\\),@er1\\+" \
	"sub.w @(0x1234:16,er3),@er1+"
gdb_test "x" "sub.w\t@\\(0x1234(:16|),er3\\),@er1-" \
	"sub.w @(0x1234:16,er3),@er1-"
gdb_test "x" "sub.w\t@\\(0x1234(:16|),er3\\),@\\+er1" \
	"sub.w @(0x1234:16,er3),@+er1"
gdb_test "x" "sub.w\t@\\(0x1234(:16|),er3\\),@\\(0x9abc(:16|),er1\\)" \
	"sub.w @(0x1234:16,er3),@(0x9abc:16,er1)"
gdb_test "x" "sub.w\t@\\(0x1234(:16|),er3\\),@\\(0x9abcdef0(:32|),er1\\)" \
	"sub.w @(0x1234:16,er3),@(0x9abcdef0:32,er1)"
gdb_test "x" "sub.w\t@\\(0x1234(:16|),er3\\),@\\(0x9abc(:16|),r2l.b\\)" \
	"sub.w @(0x1234:16,er3),@(0x9abc:16,r2l.b)"
gdb_test "x" "sub.w\t@\\(0x1234(:16|),er3\\),@\\(0x9abc(:16|),r2.w\\)" \
	"sub.w @(0x1234:16,er3),@(0x9abc:16,r2.w)"
gdb_test "x" "sub.w\t@\\(0x1234(:16|),er3\\),@\\(0x9abc(:16|),er2.l\\)" \
	"sub.w @(0x1234:16,er3),@(0x9abc:16,er2.l)"
gdb_test "x" "sub.w\t@\\(0x1234(:16|),er3\\),@\\(0x9abcdef0(:32|),r2l.b\\)" \
	"sub.w @(0x1234:16,er3),@(0x9abcdef0:32,r2l.b)"
gdb_test "x" "sub.w\t@\\(0x1234(:16|),er3\\),@\\(0x9abcdef0(:32|),r2.w\\)" \
	"sub.w @(0x1234:16,er3),@(0x9abcdef0:32,r2.w)"
gdb_test "x" "sub.w\t@\\(0x1234(:16|),er3\\),@\\(0x9abcdef0(:32|),er2.l\\)" \
	"sub.w @(0x1234:16,er3),@(0x9abcdef0:32,er2.l)"
gdb_test "x" "sub.w\t@\\(0x1234(:16|),er3\\),@0x9abc(:16|)" \
	"sub.w @(0x1234:16,er3),@0x9abc:16"
gdb_test "x" "sub.w\t@\\(0x1234(:16|),er3\\),@0x9abcdef0(:32|)" \
	"sub.w @(0x1234:16,er3),@0x9abcdef0:32"
gdb_test "x" "sub.w\t@\\(0x12345678(:32|),er3\\),@er1" \
	"sub.w @(0x12345678:32,er3),@er1"
gdb_test "x" "sub.w\t@\\(0x12345678(:32|),er3\\),@\\(0x6(:2|),er1\\)" \
	"sub.w @(0x12345678:32,er3),@(0x6:2,er1)"
gdb_test "x" "sub.w\t@\\(0x12345678(:32|),er3\\),@-er1" \
	"sub.w @(0x12345678:32,er3),@-er1"
gdb_test "x" "sub.w\t@\\(0x12345678(:32|),er3\\),@er1\\+" \
	"sub.w @(0x12345678:32,er3),@er1+"
gdb_test "x" "sub.w\t@\\(0x12345678(:32|),er3\\),@er1-" \
	"sub.w @(0x12345678:32,er3),@er1-"
gdb_test "x" "sub.w\t@\\(0x12345678(:32|),er3\\),@\\+er1" \
	"sub.w @(0x12345678:32,er3),@+er1"
gdb_test "x" "sub.w\t@\\(0x12345678(:32|),er3\\),@\\(0x9abc(:16|),er1\\)" \
	"sub.w @(0x12345678:32,er3),@(0x9abc:16,er1)"
gdb_test "x" "sub.w\t@\\(0x12345678(:32|),er3\\),@\\(0x9abcdef0(:32|),er1\\)" \
	"sub.w @(0x12345678:32,er3),@(0x9abcdef0:32,er1)"
gdb_test "x" "sub.w\t@\\(0x12345678(:32|),er3\\),@\\(0x9abc(:16|),r2l.b\\)" \
	"sub.w @(0x12345678:32,er3),@(0x9abc:16,r2l.b)"
gdb_test "x" "sub.w\t@\\(0x12345678(:32|),er3\\),@\\(0x9abc(:16|),r2.w\\)" \
	"sub.w @(0x12345678:32,er3),@(0x9abc:16,r2.w)"
gdb_test "x" "sub.w\t@\\(0x12345678(:32|),er3\\),@\\(0x9abc(:16|),er2.l\\)" \
	"sub.w @(0x12345678:32,er3),@(0x9abc:16,er2.l)"
gdb_test "x" "sub.w\t@\\(0x12345678(:32|),er3\\),@\\(0x9abcdef0(:32|),r2l.b\\)" \
	"sub.w @(0x12345678:32,er3),@(0x9abcdef0:32,r2l.b)"
gdb_test "x" "sub.w\t@\\(0x12345678(:32|),er3\\),@\\(0x9abcdef0(:32|),r2.w\\)" \
	"sub.w @(0x12345678:32,er3),@(0x9abcdef0:32,r2.w)"
gdb_test "x" "sub.w\t@\\(0x12345678(:32|),er3\\),@\\(0x9abcdef0(:32|),er2.l\\)" \
	"sub.w @(0x12345678:32,er3),@(0x9abcdef0:32,er2.l)"
gdb_test "x" "sub.w\t@\\(0x12345678(:32|),er3\\),@0x9abc(:16|)" \
	"sub.w @(0x12345678:32,er3),@0x9abc:16"
gdb_test "x" "sub.w\t@\\(0x12345678(:32|),er3\\),@0x9abcdef0(:32|)" \
	"sub.w @(0x12345678:32,er3),@0x9abcdef0:32"
gdb_test "x" "sub.w\t@\\(0x1234(:16|),r3l.b\\),@er1" \
	"sub.w @(0x1234:16,r3l.b),@er1"
gdb_test "x" "sub.w\t@\\(0x1234(:16|),r3l.b\\),@\\(0x6(:2|),er1\\)" \
	"sub.w @(0x1234:16,r3l.b),@(0x6:2,er1)"
gdb_test "x" "sub.w\t@\\(0x1234(:16|),r3l.b\\),@-er1" \
	"sub.w @(0x1234:16,r3l.b),@-er1"
gdb_test "x" "sub.w\t@\\(0x1234(:16|),r3l.b\\),@er1\\+" \
	"sub.w @(0x1234:16,r3l.b),@er1+"
gdb_test "x" "sub.w\t@\\(0x1234(:16|),r3l.b\\),@er1-" \
	"sub.w @(0x1234:16,r3l.b),@er1-"
gdb_test "x" "sub.w\t@\\(0x1234(:16|),r3l.b\\),@\\+er1" \
	"sub.w @(0x1234:16,r3l.b),@+er1"
gdb_test "x" "sub.w\t@\\(0x1234(:16|),r3l.b\\),@\\(0x9abc(:16|),er1\\)" \
	"sub.w @(0x1234:16,r3l.b),@(0x9abc:16,er1)"
gdb_test "x" "sub.w\t@\\(0x1234(:16|),r3l.b\\),@\\(0x9abcdef0(:32|),er1\\)" \
	"sub.w @(0x1234:16,r3l.b),@(0x9abcdef0:32,er1)"
gdb_test "x" "sub.w\t@\\(0x1234(:16|),r3l.b\\),@\\(0x9abc(:16|),r2l.b\\)" \
	"sub.w @(0x1234:16,r3l.b),@(0x9abc:16,r2l.b)"
gdb_test "x" "sub.w\t@\\(0x1234(:16|),r3l.b\\),@\\(0x9abc(:16|),r2.w\\)" \
	"sub.w @(0x1234:16,r3l.b),@(0x9abc:16,r2.w)"
gdb_test "x" "sub.w\t@\\(0x1234(:16|),r3l.b\\),@\\(0x9abc(:16|),er2.l\\)" \
	"sub.w @(0x1234:16,r3l.b),@(0x9abc:16,er2.l)"
gdb_test "x" "sub.w\t@\\(0x1234(:16|),r3l.b\\),@\\(0x9abcdef0(:32|),r2l.b\\)" \
	"sub.w @(0x1234:16,r3l.b),@(0x9abcdef0:32,r2l.b)"
gdb_test "x" "sub.w\t@\\(0x1234(:16|),r3l.b\\),@\\(0x9abcdef0(:32|),r2.w\\)" \
	"sub.w @(0x1234:16,r3l.b),@(0x9abcdef0:32,r2.w)"
gdb_test "x" "sub.w\t@\\(0x1234(:16|),r3l.b\\),@\\(0x9abcdef0(:32|),er2.l\\)" \
	"sub.w @(0x1234:16,r3l.b),@(0x9abcdef0:32,er2.l)"
gdb_test "x" "sub.w\t@\\(0x1234(:16|),r3l.b\\),@0x9abc(:16|)" \
	"sub.w @(0x1234:16,r3l.b),@0x9abc:16"
gdb_test "x" "sub.w\t@\\(0x1234(:16|),r3l.b\\),@0x9abcdef0(:32|)" \
	"sub.w @(0x1234:16,r3l.b),@0x9abcdef0:32"
gdb_test "x" "sub.w\t@\\(0x1234(:16|),r3.w\\),@er1" \
	"sub.w @(0x1234:16,r3.w),@er1"
gdb_test "x" "sub.w\t@\\(0x1234(:16|),r3.w\\),@\\(0x6(:2|),er1\\)" \
	"sub.w @(0x1234:16,r3.w),@(0x6:2,er1)"
gdb_test "x" "sub.w\t@\\(0x1234(:16|),r3.w\\),@-er1" \
	"sub.w @(0x1234:16,r3.w),@-er1"
gdb_test "x" "sub.w\t@\\(0x1234(:16|),r3.w\\),@er1\\+" \
	"sub.w @(0x1234:16,r3.w),@er1+"
gdb_test "x" "sub.w\t@\\(0x1234(:16|),r3.w\\),@er1-" \
	"sub.w @(0x1234:16,r3.w),@er1-"
gdb_test "x" "sub.w\t@\\(0x1234(:16|),r3.w\\),@\\+er1" \
	"sub.w @(0x1234:16,r3.w),@+er1"
gdb_test "x" "sub.w\t@\\(0x1234(:16|),r3.w\\),@\\(0x9abc(:16|),er1\\)" \
	"sub.w @(0x1234:16,r3.w),@(0x9abc:16,er1)"
gdb_test "x" "sub.w\t@\\(0x1234(:16|),r3.w\\),@\\(0x9abcdef0(:32|),er1\\)" \
	"sub.w @(0x1234:16,r3.w),@(0x9abcdef0:32,er1)"
gdb_test "x" "sub.w\t@\\(0x1234(:16|),r3.w\\),@\\(0x9abc(:16|),r2l.b\\)" \
	"sub.w @(0x1234:16,r3.w),@(0x9abc:16,r2l.b)"
gdb_test "x" "sub.w\t@\\(0x1234(:16|),r3.w\\),@\\(0x9abc(:16|),r2.w\\)" \
	"sub.w @(0x1234:16,r3.w),@(0x9abc:16,r2.w)"
gdb_test "x" "sub.w\t@\\(0x1234(:16|),r3.w\\),@\\(0x9abc(:16|),er2.l\\)" \
	"sub.w @(0x1234:16,r3.w),@(0x9abc:16,er2.l)"
gdb_test "x" "sub.w\t@\\(0x1234(:16|),r3.w\\),@\\(0x9abcdef0(:32|),r2l.b\\)" \
	"sub.w @(0x1234:16,r3.w),@(0x9abcdef0:32,r2l.b)"
gdb_test "x" "sub.w\t@\\(0x1234(:16|),r3.w\\),@\\(0x9abcdef0(:32|),r2.w\\)" \
	"sub.w @(0x1234:16,r3.w),@(0x9abcdef0:32,r2.w)"
gdb_test "x" "sub.w\t@\\(0x1234(:16|),r3.w\\),@\\(0x9abcdef0(:32|),er2.l\\)" \
	"sub.w @(0x1234:16,r3.w),@(0x9abcdef0:32,er2.l)"
gdb_test "x" "sub.w\t@\\(0x1234(:16|),r3.w\\),@0x9abc(:16|)" \
	"sub.w @(0x1234:16,r3.w),@0x9abc:16"
gdb_test "x" "sub.w\t@\\(0x1234(:16|),r3.w\\),@0x9abcdef0(:32|)" \
	"sub.w @(0x1234:16,r3.w),@0x9abcdef0:32"
gdb_test "x" "sub.w\t@\\(0x1234(:16|),er3.l\\),@er1" \
	"sub.w @(0x1234:16,er3.l),@er1"
gdb_test "x" "sub.w\t@\\(0x1234(:16|),er3.l\\),@\\(0x6(:2|),er1\\)" \
	"sub.w @(0x1234:16,er3.l),@(0x6:2,er1)"
gdb_test "x" "sub.w\t@\\(0x1234(:16|),er3.l\\),@-er1" \
	"sub.w @(0x1234:16,er3.l),@-er1"
gdb_test "x" "sub.w\t@\\(0x1234(:16|),er3.l\\),@er1\\+" \
	"sub.w @(0x1234:16,er3.l),@er1+"
gdb_test "x" "sub.w\t@\\(0x1234(:16|),er3.l\\),@er1-" \
	"sub.w @(0x1234:16,er3.l),@er1-"
gdb_test "x" "sub.w\t@\\(0x1234(:16|),er3.l\\),@\\+er1" \
	"sub.w @(0x1234:16,er3.l),@+er1"
gdb_test "x" "sub.w\t@\\(0x1234(:16|),er3.l\\),@\\(0x9abc(:16|),er1\\)" \
	"sub.w @(0x1234:16,er3.l),@(0x9abc:16,er1)"
gdb_test "x" "sub.w\t@\\(0x1234(:16|),er3.l\\),@\\(0x9abcdef0(:32|),er1\\)" \
	"sub.w @(0x1234:16,er3.l),@(0x9abcdef0:32,er1)"
gdb_test "x" "sub.w\t@\\(0x1234(:16|),er3.l\\),@\\(0x9abc(:16|),r2l.b\\)" \
	"sub.w @(0x1234:16,er3.l),@(0x9abc:16,r2l.b)"
gdb_test "x" "sub.w\t@\\(0x1234(:16|),er3.l\\),@\\(0x9abc(:16|),r2.w\\)" \
	"sub.w @(0x1234:16,er3.l),@(0x9abc:16,r2.w)"
gdb_test "x" "sub.w\t@\\(0x1234(:16|),er3.l\\),@\\(0x9abc(:16|),er2.l\\)" \
	"sub.w @(0x1234:16,er3.l),@(0x9abc:16,er2.l)"
gdb_test "x" "sub.w\t@\\(0x1234(:16|),er3.l\\),@\\(0x9abcdef0(:32|),r2l.b\\)" \
	"sub.w @(0x1234:16,er3.l),@(0x9abcdef0:32,r2l.b)"
gdb_test "x" "sub.w\t@\\(0x1234(:16|),er3.l\\),@\\(0x9abcdef0(:32|),r2.w\\)" \
	"sub.w @(0x1234:16,er3.l),@(0x9abcdef0:32,r2.w)"
gdb_test "x" "sub.w\t@\\(0x1234(:16|),er3.l\\),@\\(0x9abcdef0(:32|),er2.l\\)" \
	"sub.w @(0x1234:16,er3.l),@(0x9abcdef0:32,er2.l)"
gdb_test "x" "sub.w\t@\\(0x1234(:16|),er3.l\\),@0x9abc(:16|)" \
	"sub.w @(0x1234:16,er3.l),@0x9abc:16"
gdb_test "x" "sub.w\t@\\(0x1234(:16|),er3.l\\),@0x9abcdef0(:32|)" \
	"sub.w @(0x1234:16,er3.l),@0x9abcdef0:32"
gdb_test "x" "sub.w\t@\\(0x12345678(:32|),r3l.b\\),@er1" \
	"sub.w @(0x12345678:32,r3l.b),@er1"
gdb_test "x" "sub.w\t@\\(0x12345678(:32|),r3l.b\\),@\\(0x6(:2|),er1\\)" \
	"sub.w @(0x12345678:32,r3l.b),@(0x6:2,er1)"
gdb_test "x" "sub.w\t@\\(0x12345678(:32|),r3l.b\\),@-er1" \
	"sub.w @(0x12345678:32,r3l.b),@-er1"
gdb_test "x" "sub.w\t@\\(0x12345678(:32|),r3l.b\\),@er1\\+" \
	"sub.w @(0x12345678:32,r3l.b),@er1+"
gdb_test "x" "sub.w\t@\\(0x12345678(:32|),r3l.b\\),@er1-" \
	"sub.w @(0x12345678:32,r3l.b),@er1-"
gdb_test "x" "sub.w\t@\\(0x12345678(:32|),r3l.b\\),@\\+er1" \
	"sub.w @(0x12345678:32,r3l.b),@+er1"
gdb_test "x" "sub.w\t@\\(0x12345678(:32|),r3l.b\\),@\\(0x9abc(:16|),er1\\)" \
	"sub.w @(0x12345678:32,r3l.b),@(0x9abc:16,er1)"
gdb_test "x" "sub.w\t@\\(0x12345678(:32|),r3l.b\\),@\\(0x9abcdef0(:32|),er1\\)" \
	"sub.w @(0x12345678:32,r3l.b),@(0x9abcdef0:32,er1)"
gdb_test "x" "sub.w\t@\\(0x12345678(:32|),r3l.b\\),@\\(0x9abc(:16|),r2l.b\\)" \
	"sub.w @(0x12345678:32,r3l.b),@(0x9abc:16,r2l.b)"
gdb_test "x" "sub.w\t@\\(0x12345678(:32|),r3l.b\\),@\\(0x9abc(:16|),r2.w\\)" \
	"sub.w @(0x12345678:32,r3l.b),@(0x9abc:16,r2.w)"
gdb_test "x" "sub.w\t@\\(0x12345678(:32|),r3l.b\\),@\\(0x9abc(:16|),er2.l\\)" \
	"sub.w @(0x12345678:32,r3l.b),@(0x9abc:16,er2.l)"
gdb_test "x" "sub.w\t@\\(0x12345678(:32|),r3l.b\\),@\\(0x9abcdef0(:32|),r2l.b\\)" \
	"sub.w @(0x12345678:32,r3l.b),@(0x9abcdef0:32,r2l.b)"
gdb_test "x" "sub.w\t@\\(0x12345678(:32|),r3l.b\\),@\\(0x9abcdef0(:32|),r2.w\\)" \
	"sub.w @(0x12345678:32,r3l.b),@(0x9abcdef0:32,r2.w)"
gdb_test "x" "sub.w\t@\\(0x12345678(:32|),r3l.b\\),@\\(0x9abcdef0(:32|),er2.l\\)" \
	"sub.w @(0x12345678:32,r3l.b),@(0x9abcdef0:32,er2.l)"
gdb_test "x" "sub.w\t@\\(0x12345678(:32|),r3l.b\\),@0x9abc(:16|)" \
	"sub.w @(0x12345678:32,r3l.b),@0x9abc:16"
gdb_test "x" "sub.w\t@\\(0x12345678(:32|),r3l.b\\),@0x9abcdef0(:32|)" \
	"sub.w @(0x12345678:32,r3l.b),@0x9abcdef0:32"
gdb_test "x" "sub.w\t@\\(0x12345678(:32|),r3.w\\),@er1" \
	"sub.w @(0x12345678:32,r3.w),@er1"
gdb_test "x" "sub.w\t@\\(0x12345678(:32|),r3.w\\),@\\(0x6(:2|),er1\\)" \
	"sub.w @(0x12345678:32,r3.w),@(0x6:2,er1)"
gdb_test "x" "sub.w\t@\\(0x12345678(:32|),r3.w\\),@-er1" \
	"sub.w @(0x12345678:32,r3.w),@-er1"
gdb_test "x" "sub.w\t@\\(0x12345678(:32|),r3.w\\),@er1\\+" \
	"sub.w @(0x12345678:32,r3.w),@er1+"
gdb_test "x" "sub.w\t@\\(0x12345678(:32|),r3.w\\),@er1-" \
	"sub.w @(0x12345678:32,r3.w),@er1-"
gdb_test "x" "sub.w\t@\\(0x12345678(:32|),r3.w\\),@\\+er1" \
	"sub.w @(0x12345678:32,r3.w),@+er1"
gdb_test "x" "sub.w\t@\\(0x12345678(:32|),r3.w\\),@\\(0x9abc(:16|),er1\\)" \
	"sub.w @(0x12345678:32,r3.w),@(0x9abc:16,er1)"
gdb_test "x" "sub.w\t@\\(0x12345678(:32|),r3.w\\),@\\(0x9abcdef0(:32|),er1\\)" \
	"sub.w @(0x12345678:32,r3.w),@(0x9abcdef0:32,er1)"
gdb_test "x" "sub.w\t@\\(0x12345678(:32|),r3.w\\),@\\(0x9abc(:16|),r2l.b\\)" \
	"sub.w @(0x12345678:32,r3.w),@(0x9abc:16,r2l.b)"
gdb_test "x" "sub.w\t@\\(0x12345678(:32|),r3.w\\),@\\(0x9abc(:16|),r2.w\\)" \
	"sub.w @(0x12345678:32,r3.w),@(0x9abc:16,r2.w)"
gdb_test "x" "sub.w\t@\\(0x12345678(:32|),r3.w\\),@\\(0x9abc(:16|),er2.l\\)" \
	"sub.w @(0x12345678:32,r3.w),@(0x9abc:16,er2.l)"
gdb_test "x" "sub.w\t@\\(0x12345678(:32|),r3.w\\),@\\(0x9abcdef0(:32|),r2l.b\\)" \
	"sub.w @(0x12345678:32,r3.w),@(0x9abcdef0:32,r2l.b)"
gdb_test "x" "sub.w\t@\\(0x12345678(:32|),r3.w\\),@\\(0x9abcdef0(:32|),r2.w\\)" \
	"sub.w @(0x12345678:32,r3.w),@(0x9abcdef0:32,r2.w)"
gdb_test "x" "sub.w\t@\\(0x12345678(:32|),r3.w\\),@\\(0x9abcdef0(:32|),er2.l\\)" \
	"sub.w @(0x12345678:32,r3.w),@(0x9abcdef0:32,er2.l)"
gdb_test "x" "sub.w\t@\\(0x12345678(:32|),r3.w\\),@0x9abc(:16|)" \
	"sub.w @(0x12345678:32,r3.w),@0x9abc:16"
gdb_test "x" "sub.w\t@\\(0x12345678(:32|),r3.w\\),@0x9abcdef0(:32|)" \
	"sub.w @(0x12345678:32,r3.w),@0x9abcdef0:32"
gdb_test "x" "sub.w\t@\\(0x12345678(:32|),er3.l\\),@er1" \
	"sub.w @(0x12345678:32,er3.l),@er1"
gdb_test "x" "sub.w\t@\\(0x12345678(:32|),er3.l\\),@\\(0x6(:2|),er1\\)" \
	"sub.w @(0x12345678:32,er3.l),@(0x6:2,er1)"
gdb_test "x" "sub.w\t@\\(0x12345678(:32|),er3.l\\),@-er1" \
	"sub.w @(0x12345678:32,er3.l),@-er1"
gdb_test "x" "sub.w\t@\\(0x12345678(:32|),er3.l\\),@er1\\+" \
	"sub.w @(0x12345678:32,er3.l),@er1+"
gdb_test "x" "sub.w\t@\\(0x12345678(:32|),er3.l\\),@er1-" \
	"sub.w @(0x12345678:32,er3.l),@er1-"
gdb_test "x" "sub.w\t@\\(0x12345678(:32|),er3.l\\),@\\+er1" \
	"sub.w @(0x12345678:32,er3.l),@+er1"
gdb_test "x" "sub.w\t@\\(0x12345678(:32|),er3.l\\),@\\(0x9abc(:16|),er1\\)" \
	"sub.w @(0x12345678:32,er3.l),@(0x9abc:16,er1)"
gdb_test "x" "sub.w\t@\\(0x12345678(:32|),er3.l\\),@\\(0x9abcdef0(:32|),er1\\)" \
	"sub.w @(0x12345678:32,er3.l),@(0x9abcdef0:32,er1)"
gdb_test "x" "sub.w\t@\\(0x12345678(:32|),er3.l\\),@\\(0x9abc(:16|),r2l.b\\)" \
	"sub.w @(0x12345678:32,er3.l),@(0x9abc:16,r2l.b)"
gdb_test "x" "sub.w\t@\\(0x12345678(:32|),er3.l\\),@\\(0x9abc(:16|),r2.w\\)" \
	"sub.w @(0x12345678:32,er3.l),@(0x9abc:16,r2.w)"
gdb_test "x" "sub.w\t@\\(0x12345678(:32|),er3.l\\),@\\(0x9abc(:16|),er2.l\\)" \
	"sub.w @(0x12345678:32,er3.l),@(0x9abc:16,er2.l)"
gdb_test "x" "sub.w\t@\\(0x12345678(:32|),er3.l\\),@\\(0x9abcdef0(:32|),r2l.b\\)" \
	"sub.w @(0x12345678:32,er3.l),@(0x9abcdef0:32,r2l.b)"
gdb_test "x" "sub.w\t@\\(0x12345678(:32|),er3.l\\),@\\(0x9abcdef0(:32|),r2.w\\)" \
	"sub.w @(0x12345678:32,er3.l),@(0x9abcdef0:32,r2.w)"
gdb_test "x" "sub.w\t@\\(0x12345678(:32|),er3.l\\),@\\(0x9abcdef0(:32|),er2.l\\)" \
	"sub.w @(0x12345678:32,er3.l),@(0x9abcdef0:32,er2.l)"
gdb_test "x" "sub.w\t@\\(0x12345678(:32|),er3.l\\),@0x9abc(:16|)" \
	"sub.w @(0x12345678:32,er3.l),@0x9abc:16"
gdb_test "x" "sub.w\t@\\(0x12345678(:32|),er3.l\\),@0x9abcdef0(:32|)" \
	"sub.w @(0x12345678:32,er3.l),@0x9abcdef0:32"
gdb_test "x" "sub.w\t@0x1234(:16|),@er1" \
	"sub.w @0x1234:16,@er1"
gdb_test "x" "sub.w\t@0x1234(:16|),@\\(0x6(:2|),er1\\)" \
	"sub.w @0x1234:16,@(0x6:2,er1)"
gdb_test "x" "sub.w\t@0x1234(:16|),@-er1" \
	"sub.w @0x1234:16,@-er1"
gdb_test "x" "sub.w\t@0x1234(:16|),@er1\\+" \
	"sub.w @0x1234:16,@er1+"
gdb_test "x" "sub.w\t@0x1234(:16|),@er1-" \
	"sub.w @0x1234:16,@er1-"
gdb_test "x" "sub.w\t@0x1234(:16|),@\\+er1" \
	"sub.w @0x1234:16,@+er1"
gdb_test "x" "sub.w\t@0x1234(:16|),@\\(0x9abc(:16|),er1\\)" \
	"sub.w @0x1234:16,@(0x9abc:16,er1)"
gdb_test "x" "sub.w\t@0x1234(:16|),@\\(0x9abcdef0(:32|),er1\\)" \
	"sub.w @0x1234:16,@(0x9abcdef0:32,er1)"
gdb_test "x" "sub.w\t@0x1234(:16|),@\\(0x9abc(:16|),r2l.b\\)" \
	"sub.w @0x1234:16,@(0x9abc:16,r2l.b)"
gdb_test "x" "sub.w\t@0x1234(:16|),@\\(0x9abc(:16|),r2.w\\)" \
	"sub.w @0x1234:16,@(0x9abc:16,r2.w)"
gdb_test "x" "sub.w\t@0x1234(:16|),@\\(0x9abc(:16|),er2.l\\)" \
	"sub.w @0x1234:16,@(0x9abc:16,er2.l)"
gdb_test "x" "sub.w\t@0x1234(:16|),@\\(0x9abcdef0(:32|),r2l.b\\)" \
	"sub.w @0x1234:16,@(0x9abcdef0:32,r2l.b)"
gdb_test "x" "sub.w\t@0x1234(:16|),@\\(0x9abcdef0(:32|),r2.w\\)" \
	"sub.w @0x1234:16,@(0x9abcdef0:32,r2.w)"
gdb_test "x" "sub.w\t@0x1234(:16|),@\\(0x9abcdef0(:32|),er2.l\\)" \
	"sub.w @0x1234:16,@(0x9abcdef0:32,er2.l)"
gdb_test "x" "sub.w\t@0x1234(:16|),@0x9abc(:16|)" \
	"sub.w @0x1234:16,@0x9abc:16"
gdb_test "x" "sub.w\t@0x1234(:16|),@0x9abcdef0(:32|)" \
	"sub.w @0x1234:16,@0x9abcdef0:32"
gdb_test "x" "sub.w\t@0x12345678(:32|),@er1" \
	"sub.w @0x12345678:32,@er1"
gdb_test "x" "sub.w\t@0x12345678(:32|),@\\(0x6(:2|),er1\\)" \
	"sub.w @0x12345678:32,@(0x6:2,er1)"
gdb_test "x" "sub.w\t@0x12345678(:32|),@-er1" \
	"sub.w @0x12345678:32,@-er1"
gdb_test "x" "sub.w\t@0x12345678(:32|),@er1\\+" \
	"sub.w @0x12345678:32,@er1+"
gdb_test "x" "sub.w\t@0x12345678(:32|),@er1-" \
	"sub.w @0x12345678:32,@er1-"
gdb_test "x" "sub.w\t@0x12345678(:32|),@\\+er1" \
	"sub.w @0x12345678:32,@+er1"
gdb_test "x" "sub.w\t@0x12345678(:32|),@\\(0x9abc(:16|),er1\\)" \
	"sub.w @0x12345678:32,@(0x9abc:16,er1)"
gdb_test "x" "sub.w\t@0x12345678(:32|),@\\(0x9abcdef0(:32|),er1\\)" \
	"sub.w @0x12345678:32,@(0x9abcdef0:32,er1)"
gdb_test "x" "sub.w\t@0x12345678(:32|),@\\(0x9abc(:16|),r2l.b\\)" \
	"sub.w @0x12345678:32,@(0x9abc:16,r2l.b)"
gdb_test "x" "sub.w\t@0x12345678(:32|),@\\(0x9abc(:16|),r2.w\\)" \
	"sub.w @0x12345678:32,@(0x9abc:16,r2.w)"
gdb_test "x" "sub.w\t@0x12345678(:32|),@\\(0x9abc(:16|),er2.l\\)" \
	"sub.w @0x12345678:32,@(0x9abc:16,er2.l)"
gdb_test "x" "sub.w\t@0x12345678(:32|),@\\(0x9abcdef0(:32|),r2l.b\\)" \
	"sub.w @0x12345678:32,@(0x9abcdef0:32,r2l.b)"
gdb_test "x" "sub.w\t@0x12345678(:32|),@\\(0x9abcdef0(:32|),r2.w\\)" \
	"sub.w @0x12345678:32,@(0x9abcdef0:32,r2.w)"
gdb_test "x" "sub.w\t@0x12345678(:32|),@\\(0x9abcdef0(:32|),er2.l\\)" \
	"sub.w @0x12345678:32,@(0x9abcdef0:32,er2.l)"
gdb_test "x" "sub.w\t@0x12345678(:32|),@0x9abc(:16|)" \
	"sub.w @0x12345678:32,@0x9abc:16"
gdb_test "x" "sub.w\t@0x12345678(:32|),@0x9abcdef0(:32|)" \
	"sub.w @0x12345678:32,@0x9abcdef0:32"
gdb_test "x" "sub.l\t#0x12345678(:32|),er1" \
	"sub.l #0x12345678:32,er1"
gdb_test "x" "sub.l\t#0x1234(:16|),er1" \
	"sub.l #0x1234:16,er1"
gdb_test "x" "sub.l\t#0x7(:3|),er2" \
	"sub.l #0x7:3,er2"
gdb_test "x" "sub.l\t#0x12345678(:32|),@er1" \
	"sub.l #0x12345678:32,@er1"
gdb_test "x" "sub.l\t#0x12345678(:32|),@\\(0xc(:2|),er1\\)" \
	"sub.l #0x12345678:32,@(0xc:2,er1)"
gdb_test "x" "sub.l\t#0x12345678(:32|),@er1\\+" \
	"sub.l #0x12345678:32,@er1+"
gdb_test "x" "sub.l\t#0x12345678(:32|),@-er1" \
	"sub.l #0x12345678:32,@-er1"
gdb_test "x" "sub.l\t#0x12345678(:32|),@\\+er1" \
	"sub.l #0x12345678:32,@+er1"
gdb_test "x" "sub.l\t#0x12345678(:32|),@er1-" \
	"sub.l #0x12345678:32,@er1-"
gdb_test "x" "sub.l\t#0x12345678(:32|),@\\(0x9abc(:16|),er1\\)" \
	"sub.l #0x12345678:32,@(0x9abc:16,er1)"
gdb_test "x" "sub.l\t#0x12345678(:32|),@\\(0x9abcdef0(:32|),er1\\)" \
	"sub.l #0x12345678:32,@(0x9abcdef0:32,er1)"
gdb_test "x" "sub.l\t#0x12345678(:32|),@\\(0x9abc(:16|),r2l.b\\)" \
	"sub.l #0x12345678:32,@(0x9abc:16,r2l.b)"
gdb_test "x" "sub.l\t#0x12345678(:32|),@\\(0x9abc(:16|),r2.w\\)" \
	"sub.l #0x12345678:32,@(0x9abc:16,r2.w)"
gdb_test "x" "sub.l\t#0x12345678(:32|),@\\(0x9abc(:16|),er2.l\\)" \
	"sub.l #0x12345678:32,@(0x9abc:16,er2.l)"
gdb_test "x" "sub.l\t#0x12345678(:32|),@\\(0x9abcdef0(:32|),r2l.b\\)" \
	"sub.l #0x12345678:32,@(0x9abcdef0:32,r2l.b)"
gdb_test "x" "sub.l\t#0x12345678(:32|),@\\(0x9abcdef0(:32|),r2.w\\)" \
	"sub.l #0x12345678:32,@(0x9abcdef0:32,r2.w)"
gdb_test "x" "sub.l\t#0x12345678(:32|),@\\(0x9abcdef0(:32|),er2.l\\)" \
	"sub.l #0x12345678:32,@(0x9abcdef0:32,er2.l)"
gdb_test "x" "sub.l\t#0x12345678(:32|),@0x9abc(:16|)" \
	"sub.l #0x12345678:32,@0x9abc:16"
gdb_test "x" "sub.l\t#0x12345678(:32|),@0x9abcdef0(:32|)" \
	"sub.l #0x12345678:32,@0x9abcdef0:32"
gdb_test "x" "sub.l\t#0x1234(:16|),@er1" \
	"sub.l #0x1234:16,@er1"
gdb_test "x" "sub.l\t#0x1234(:16|),@\\(0xc(:2|),er1\\)" \
	"sub.l #0x1234:16,@(0xc:2,er1)"
gdb_test "x" "sub.l\t#0x1234(:16|),@er1\\+" \
	"sub.l #0x1234:16,@er1+"
gdb_test "x" "sub.l\t#0x1234(:16|),@-er1" \
	"sub.l #0x1234:16,@-er1"
gdb_test "x" "sub.l\t#0x1234(:16|),@\\+er1" \
	"sub.l #0x1234:16,@+er1"
gdb_test "x" "sub.l\t#0x1234(:16|),@er1-" \
	"sub.l #0x1234:16,@er1-"
gdb_test "x" "sub.l\t#0x1234(:16|),@\\(0x9abc(:16|),er1\\)" \
	"sub.l #0x1234:16,@(0x9abc:16,er1)"
gdb_test "x" "sub.l\t#0x1234(:16|),@\\(0x9abcdef0(:32|),er1\\)" \
	"sub.l #0x1234:16,@(0x9abcdef0:32,er1)"
gdb_test "x" "sub.l\t#0x1234(:16|),@\\(0x9abc(:16|),r2l.b\\)" \
	"sub.l #0x1234:16,@(0x9abc:16,r2l.b)"
gdb_test "x" "sub.l\t#0x1234(:16|),@\\(0x9abc(:16|),r2.w\\)" \
	"sub.l #0x1234:16,@(0x9abc:16,r2.w)"
gdb_test "x" "sub.l\t#0x1234(:16|),@\\(0x9abc(:16|),er2.l\\)" \
	"sub.l #0x1234:16,@(0x9abc:16,er2.l)"
gdb_test "x" "sub.l\t#0x1234(:16|),@\\(0x9abcdef0(:32|),r2l.b\\)" \
	"sub.l #0x1234:16,@(0x9abcdef0:32,r2l.b)"
gdb_test "x" "sub.l\t#0x1234(:16|),@\\(0x9abcdef0(:32|),r2.w\\)" \
	"sub.l #0x1234:16,@(0x9abcdef0:32,r2.w)"
gdb_test "x" "sub.l\t#0x1234(:16|),@\\(0x9abcdef0(:32|),er2.l\\)" \
	"sub.l #0x1234:16,@(0x9abcdef0:32,er2.l)"
gdb_test "x" "sub.l\t#0x1234(:16|),@0x9abc(:16|)" \
	"sub.l #0x1234:16,@0x9abc:16"
gdb_test "x" "sub.l\t#0x1234(:16|),@0x9abcdef0(:32|)" \
	"sub.l #0x1234:16,@0x9abcdef0:32"
gdb_test "x" "sub.l\ter3,er1" \
	"sub.l er3,er1"
gdb_test "x" "sub.l\ter3,@er1" \
	"sub.l er3,@er1"
gdb_test "x" "sub.l\ter3,@\\(0xc(:2|),er1\\)" \
	"sub.l er3,@(0xc:2,er1)"
gdb_test "x" "sub.l\ter3,@er1\\+" \
	"sub.l er3,@er1+"
gdb_test "x" "sub.l\ter3,@-er1" \
	"sub.l er3,@-er1"
gdb_test "x" "sub.l\ter3,@\\+er1" \
	"sub.l er3,@+er1"
gdb_test "x" "sub.l\ter3,@er1-" \
	"sub.l er3,@er1-"
gdb_test "x" "sub.l\ter3,@\\(0x1234(:16|),er1\\)" \
	"sub.l er3,@(0x1234:16,er1)"
gdb_test "x" "sub.l\ter3,@\\(0x12345678(:32|),er1\\)" \
	"sub.l er3,@(0x12345678:32,er1)"
gdb_test "x" "sub.l\ter3,@\\(0x1234(:16|),r2l.b\\)" \
	"sub.l er3,@(0x1234:16,r2l.b)"
gdb_test "x" "sub.l\ter3,@\\(0x1234(:16|),r2.w\\)" \
	"sub.l er3,@(0x1234:16,r2.w)"
gdb_test "x" "sub.l\ter3,@\\(0x1234(:16|),er2.l\\)" \
	"sub.l er3,@(0x1234:16,er2.l)"
gdb_test "x" "sub.l\ter3,@\\(0x12345678(:32|),r2l.b\\)" \
	"sub.l er3,@(0x12345678:32,r2l.b)"
gdb_test "x" "sub.l\ter3,@\\(0x12345678(:32|),r2.w\\)" \
	"sub.l er3,@(0x12345678:32,r2.w)"
gdb_test "x" "sub.l\ter3,@\\(0x12345678(:32|),er2.l\\)" \
	"sub.l er3,@(0x12345678:32,er2.l)"
gdb_test "x" "sub.l\ter3,@0x1234(:16|)" \
	"sub.l er3,@0x1234:16"
gdb_test "x" "sub.l\ter3,@0x12345678(:32|)" \
	"sub.l er3,@0x12345678:32"
gdb_test "x" "sub.l\t@er3,er1" \
	"sub.l @er3,er1"
gdb_test "x" "sub.l\t@\\(0xc(:2|),er3\\),er1" \
	"sub.l @(0xc:2,er3),er1"
gdb_test "x" "sub.l\t@er3\\+,er1" \
	"sub.l @er3+,er1"
gdb_test "x" "sub.l\t@-er3,er1" \
	"sub.l @-er3,er1"
gdb_test "x" "sub.l\t@\\+er3,er1" \
	"sub.l @+er3,er1"
gdb_test "x" "sub.l\t@er3-,er1" \
	"sub.l @er3-,er1"
gdb_test "x" "sub.l\t@\\(0x1234(:16|),er1\\),er1" \
	"sub.l @(0x1234:16,er1),er1"
gdb_test "x" "sub.l\t@\\(0x12345678(:32|),er1\\),er1" \
	"sub.l @(0x12345678:32,er1),er1"
gdb_test "x" "sub.l\t@\\(0x1234(:16|),r2l.b\\),er1" \
	"sub.l @(0x1234:16,r2l.b),er1"
gdb_test "x" "sub.l\t@\\(0x1234(:16|),r2.w\\),er1" \
	"sub.l @(0x1234:16,r2.w),er1"
gdb_test "x" "sub.l\t@\\(0x1234(:16|),er2.l\\),er1" \
	"sub.l @(0x1234:16,er2.l),er1"
gdb_test "x" "sub.l\t@\\(0x12345678(:32|),r2l.b\\),er1" \
	"sub.l @(0x12345678:32,r2l.b),er1"
gdb_test "x" "sub.l\t@\\(0x12345678(:32|),r2.w\\),er1" \
	"sub.l @(0x12345678:32,r2.w),er1"
gdb_test "x" "sub.l\t@\\(0x12345678(:32|),er2.l\\),er1" \
	"sub.l @(0x12345678:32,er2.l),er1"
gdb_test "x" "sub.l\t@0x1234(:16|),er1" \
	"sub.l @0x1234:16,er1"
gdb_test "x" "sub.l\t@0x12345678(:32|),er1" \
	"sub.l @0x12345678:32,er1"
gdb_test "x" "sub.l\t@er3,@er1" \
	"sub.l @er3,@er1"
gdb_test "x" "sub.l\t@er3,@\\(0xc(:2|),er1\\)" \
	"sub.l @er3,@(0xc:2,er1)"
gdb_test "x" "sub.l\t@er3,@-er1" \
	"sub.l @er3,@-er1"
gdb_test "x" "sub.l\t@er3,@er1\\+" \
	"sub.l @er3,@er1+"
gdb_test "x" "sub.l\t@er3,@er1-" \
	"sub.l @er3,@er1-"
gdb_test "x" "sub.l\t@er3,@\\+er1" \
	"sub.l @er3,@+er1"
gdb_test "x" "sub.l\t@er3,@\\(0x9abc(:16|),er1\\)" \
	"sub.l @er3,@(0x9abc:16,er1)"
gdb_test "x" "sub.l\t@er3,@\\(0x9abcdef0(:32|),er1\\)" \
	"sub.l @er3,@(0x9abcdef0:32,er1)"
gdb_test "x" "sub.l\t@er3,@\\(0x9abc(:16|),r2l.b\\)" \
	"sub.l @er3,@(0x9abc:16,r2l.b)"
gdb_test "x" "sub.l\t@er3,@\\(0x9abc(:16|),r2.w\\)" \
	"sub.l @er3,@(0x9abc:16,r2.w)"
gdb_test "x" "sub.l\t@er3,@\\(0x9abc(:16|),er2.l\\)" \
	"sub.l @er3,@(0x9abc:16,er2.l)"
gdb_test "x" "sub.l\t@er3,@\\(0x9abcdef0(:32|),r2l.b\\)" \
	"sub.l @er3,@(0x9abcdef0:32,r2l.b)"
gdb_test "x" "sub.l\t@er3,@\\(0x9abcdef0(:32|),r2.w\\)" \
	"sub.l @er3,@(0x9abcdef0:32,r2.w)"
gdb_test "x" "sub.l\t@er3,@\\(0x9abcdef0(:32|),er2.l\\)" \
	"sub.l @er3,@(0x9abcdef0:32,er2.l)"
gdb_test "x" "sub.l\t@er3,@0x9abc(:16|)" \
	"sub.l @er3,@0x9abc:16"
gdb_test "x" "sub.l\t@er3,@0x9abcdef0(:32|)" \
	"sub.l @er3,@0x9abcdef0:32"
gdb_test "x" "sub.l\t@\\(0xc(:2|),er3\\),@er1" \
	"sub.l @(0xc:2,er3),@er1"
gdb_test "x" "sub.l\t@\\(0xc(:2|),er3\\),@\\(0xc(:2|),er1\\)" \
	"sub.l @(0xc:2,er3),@(0xc:2,er1)"
gdb_test "x" "sub.l\t@\\(0xc(:2|),er3\\),@-er1" \
	"sub.l @(0xc:2,er3),@-er1"
gdb_test "x" "sub.l\t@\\(0xc(:2|),er3\\),@er1\\+" \
	"sub.l @(0xc:2,er3),@er1+"
gdb_test "x" "sub.l\t@\\(0xc(:2|),er3\\),@er1-" \
	"sub.l @(0xc:2,er3),@er1-"
gdb_test "x" "sub.l\t@\\(0xc(:2|),er3\\),@\\+er1" \
	"sub.l @(0xc:2,er3),@+er1"
gdb_test "x" "sub.l\t@\\(0xc(:2|),er3\\),@\\(0x9abc(:16|),er1\\)" \
	"sub.l @(0xc:2,er3),@(0x9abc:16,er1)"
gdb_test "x" "sub.l\t@\\(0xc(:2|),er3\\),@\\(0x9abcdef0(:32|),er1\\)" \
	"sub.l @(0xc:2,er3),@(0x9abcdef0:32,er1)"
gdb_test "x" "sub.l\t@\\(0xc(:2|),er3\\),@\\(0x9abc(:16|),r2l.b\\)" \
	"sub.l @(0xc:2,er3),@(0x9abc:16,r2l.b)"
gdb_test "x" "sub.l\t@\\(0xc(:2|),er3\\),@\\(0x9abc(:16|),r2.w\\)" \
	"sub.l @(0xc:2,er3),@(0x9abc:16,r2.w)"
gdb_test "x" "sub.l\t@\\(0xc(:2|),er3\\),@\\(0x9abc(:16|),er2.l\\)" \
	"sub.l @(0xc:2,er3),@(0x9abc:16,er2.l)"
gdb_test "x" "sub.l\t@\\(0xc(:2|),er3\\),@\\(0x9abcdef0(:32|),r2l.b\\)" \
	"sub.l @(0xc:2,er3),@(0x9abcdef0:32,r2l.b)"
gdb_test "x" "sub.l\t@\\(0xc(:2|),er3\\),@\\(0x9abcdef0(:32|),r2.w\\)" \
	"sub.l @(0xc:2,er3),@(0x9abcdef0:32,r2.w)"
gdb_test "x" "sub.l\t@\\(0xc(:2|),er3\\),@\\(0x9abcdef0(:32|),er2.l\\)" \
	"sub.l @(0xc:2,er3),@(0x9abcdef0:32,er2.l)"
gdb_test "x" "sub.l\t@\\(0xc(:2|),er3\\),@0x9abc(:16|)" \
	"sub.l @(0xc:2,er3),@0x9abc:16"
gdb_test "x" "sub.l\t@\\(0xc(:2|),er3\\),@0x9abcdef0(:32|)" \
	"sub.l @(0xc:2,er3),@0x9abcdef0:32"
gdb_test "x" "sub.l\t@-er3,@er1" \
	"sub.l @-er3,@er1"
gdb_test "x" "sub.l\t@-er3,@\\(0xc(:2|),er1\\)" \
	"sub.l @-er3,@(0xc:2,er1)"
gdb_test "x" "sub.l\t@-er3,@-er1" \
	"sub.l @-er3,@-er1"
gdb_test "x" "sub.l\t@-er3,@er1\\+" \
	"sub.l @-er3,@er1+"
gdb_test "x" "sub.l\t@-er3,@er1-" \
	"sub.l @-er3,@er1-"
gdb_test "x" "sub.l\t@-er3,@\\+er1" \
	"sub.l @-er3,@+er1"
gdb_test "x" "sub.l\t@-er3,@\\(0x9abc(:16|),er1\\)" \
	"sub.l @-er3,@(0x9abc:16,er1)"
gdb_test "x" "sub.l\t@-er3,@\\(0x9abcdef0(:32|),er1\\)" \
	"sub.l @-er3,@(0x9abcdef0:32,er1)"
gdb_test "x" "sub.l\t@-er3,@\\(0x9abc(:16|),r2l.b\\)" \
	"sub.l @-er3,@(0x9abc:16,r2l.b)"
gdb_test "x" "sub.l\t@-er3,@\\(0x9abc(:16|),r2.w\\)" \
	"sub.l @-er3,@(0x9abc:16,r2.w)"
gdb_test "x" "sub.l\t@-er3,@\\(0x9abc(:16|),er2.l\\)" \
	"sub.l @-er3,@(0x9abc:16,er2.l)"
gdb_test "x" "sub.l\t@-er3,@\\(0x9abcdef0(:32|),r2l.b\\)" \
	"sub.l @-er3,@(0x9abcdef0:32,r2l.b)"
gdb_test "x" "sub.l\t@-er3,@\\(0x9abcdef0(:32|),r2.w\\)" \
	"sub.l @-er3,@(0x9abcdef0:32,r2.w)"
gdb_test "x" "sub.l\t@-er3,@\\(0x9abcdef0(:32|),er2.l\\)" \
	"sub.l @-er3,@(0x9abcdef0:32,er2.l)"
gdb_test "x" "sub.l\t@-er3,@0x9abc(:16|)" \
	"sub.l @-er3,@0x9abc:16"
gdb_test "x" "sub.l\t@-er3,@0x9abcdef0(:32|)" \
	"sub.l @-er3,@0x9abcdef0:32"
gdb_test "x" "sub.l\t@er3\\+,@er1" \
	"sub.l @er3+,@er1"
gdb_test "x" "sub.l\t@er3\\+,@\\(0xc(:2|),er1\\)" \
	"sub.l @er3+,@(0xc:2,er1)"
gdb_test "x" "sub.l\t@er3\\+,@-er1" \
	"sub.l @er3+,@-er1"
gdb_test "x" "sub.l\t@er3\\+,@er1\\+" \
	"sub.l @er3+,@er1+"
gdb_test "x" "sub.l\t@er3\\+,@er1-" \
	"sub.l @er3+,@er1-"
gdb_test "x" "sub.l\t@er3\\+,@\\+er1" \
	"sub.l @er3+,@+er1"
gdb_test "x" "sub.l\t@er3\\+,@\\(0x9abc(:16|),er1\\)" \
	"sub.l @er3+,@(0x9abc:16,er1)"
gdb_test "x" "sub.l\t@er3\\+,@\\(0x9abcdef0(:32|),er1\\)" \
	"sub.l @er3+,@(0x9abcdef0:32,er1)"
gdb_test "x" "sub.l\t@er3\\+,@\\(0x9abc(:16|),r2l.b\\)" \
	"sub.l @er3+,@(0x9abc:16,r2l.b)"
gdb_test "x" "sub.l\t@er3\\+,@\\(0x9abc(:16|),r2.w\\)" \
	"sub.l @er3+,@(0x9abc:16,r2.w)"
gdb_test "x" "sub.l\t@er3\\+,@\\(0x9abc(:16|),er2.l\\)" \
	"sub.l @er3+,@(0x9abc:16,er2.l)"
gdb_test "x" "sub.l\t@er3\\+,@\\(0x9abcdef0(:32|),r2l.b\\)" \
	"sub.l @er3+,@(0x9abcdef0:32,r2l.b)"
gdb_test "x" "sub.l\t@er3\\+,@\\(0x9abcdef0(:32|),r2.w\\)" \
	"sub.l @er3+,@(0x9abcdef0:32,r2.w)"
gdb_test "x" "sub.l\t@er3\\+,@\\(0x9abcdef0(:32|),er2.l\\)" \
	"sub.l @er3+,@(0x9abcdef0:32,er2.l)"
gdb_test "x" "sub.l\t@er3\\+,@0x9abc(:16|)" \
	"sub.l @er3+,@0x9abc:16"
gdb_test "x" "sub.l\t@er3\\+,@0x9abcdef0(:32|)" \
	"sub.l @er3+,@0x9abcdef0:32"
gdb_test "x" "sub.l\t@er3-,@er1" \
	"sub.l @er3-,@er1"
gdb_test "x" "sub.l\t@er3-,@\\(0xc(:2|),er1\\)" \
	"sub.l @er3-,@(0xc:2,er1)"
gdb_test "x" "sub.l\t@er3-,@-er1" \
	"sub.l @er3-,@-er1"
gdb_test "x" "sub.l\t@er3-,@er1\\+" \
	"sub.l @er3-,@er1+"
gdb_test "x" "sub.l\t@er3-,@er1-" \
	"sub.l @er3-,@er1-"
gdb_test "x" "sub.l\t@er3-,@\\+er1" \
	"sub.l @er3-,@+er1"
gdb_test "x" "sub.l\t@er3-,@\\(0x9abc(:16|),er1\\)" \
	"sub.l @er3-,@(0x9abc:16,er1)"
gdb_test "x" "sub.l\t@er3-,@\\(0x9abcdef0(:32|),er1\\)" \
	"sub.l @er3-,@(0x9abcdef0:32,er1)"
gdb_test "x" "sub.l\t@er3-,@\\(0x9abc(:16|),r2l.b\\)" \
	"sub.l @er3-,@(0x9abc:16,r2l.b)"
gdb_test "x" "sub.l\t@er3-,@\\(0x9abc(:16|),r2.w\\)" \
	"sub.l @er3-,@(0x9abc:16,r2.w)"
gdb_test "x" "sub.l\t@er3-,@\\(0x9abc(:16|),er2.l\\)" \
	"sub.l @er3-,@(0x9abc:16,er2.l)"
gdb_test "x" "sub.l\t@er3-,@\\(0x9abcdef0(:32|),r2l.b\\)" \
	"sub.l @er3-,@(0x9abcdef0:32,r2l.b)"
gdb_test "x" "sub.l\t@er3-,@\\(0x9abcdef0(:32|),r2.w\\)" \
	"sub.l @er3-,@(0x9abcdef0:32,r2.w)"
gdb_test "x" "sub.l\t@er3-,@\\(0x9abcdef0(:32|),er2.l\\)" \
	"sub.l @er3-,@(0x9abcdef0:32,er2.l)"
gdb_test "x" "sub.l\t@er3-,@0x9abc(:16|)" \
	"sub.l @er3-,@0x9abc:16"
gdb_test "x" "sub.l\t@er3-,@0x9abcdef0(:32|)" \
	"sub.l @er3-,@0x9abcdef0:32"
gdb_test "x" "sub.l\t@\\+er3,@er1" \
	"sub.l @+er3,@er1"
gdb_test "x" "sub.l\t@\\+er3,@\\(0xc(:2|),er1\\)" \
	"sub.l @+er3,@(0xc:2,er1)"
gdb_test "x" "sub.l\t@\\+er3,@-er1" \
	"sub.l @+er3,@-er1"
gdb_test "x" "sub.l\t@\\+er3,@er1\\+" \
	"sub.l @+er3,@er1+"
gdb_test "x" "sub.l\t@\\+er3,@er1-" \
	"sub.l @+er3,@er1-"
gdb_test "x" "sub.l\t@\\+er3,@\\+er1" \
	"sub.l @+er3,@+er1"
gdb_test "x" "sub.l\t@\\+er3,@\\(0x9abc(:16|),er1\\)" \
	"sub.l @+er3,@(0x9abc:16,er1)"
gdb_test "x" "sub.l\t@\\+er3,@\\(0x9abcdef0(:32|),er1\\)" \
	"sub.l @+er3,@(0x9abcdef0:32,er1)"
gdb_test "x" "sub.l\t@\\+er3,@\\(0x9abc(:16|),r2l.b\\)" \
	"sub.l @+er3,@(0x9abc:16,r2l.b)"
gdb_test "x" "sub.l\t@\\+er3,@\\(0x9abc(:16|),r2.w\\)" \
	"sub.l @+er3,@(0x9abc:16,r2.w)"
gdb_test "x" "sub.l\t@\\+er3,@\\(0x9abc(:16|),er2.l\\)" \
	"sub.l @+er3,@(0x9abc:16,er2.l)"
gdb_test "x" "sub.l\t@\\+er3,@\\(0x9abcdef0(:32|),r2l.b\\)" \
	"sub.l @+er3,@(0x9abcdef0:32,r2l.b)"
gdb_test "x" "sub.l\t@\\+er3,@\\(0x9abcdef0(:32|),r2.w\\)" \
	"sub.l @+er3,@(0x9abcdef0:32,r2.w)"
gdb_test "x" "sub.l\t@\\+er3,@\\(0x9abcdef0(:32|),er2.l\\)" \
	"sub.l @+er3,@(0x9abcdef0:32,er2.l)"
gdb_test "x" "sub.l\t@\\+er3,@0x9abc(:16|)" \
	"sub.l @+er3,@0x9abc:16"
gdb_test "x" "sub.l\t@\\+er3,@0x9abcdef0(:32|)" \
	"sub.l @+er3,@0x9abcdef0:32"
gdb_test "x" "sub.l\t@\\(0x1234(:16|),er3\\),@er1" \
	"sub.l @(0x1234:16,er3),@er1"
gdb_test "x" "sub.l\t@\\(0x1234(:16|),er3\\),@\\(0xc(:2|),er1\\)" \
	"sub.l @(0x1234:16,er3),@(0xc:2,er1)"
gdb_test "x" "sub.l\t@\\(0x1234(:16|),er3\\),@-er1" \
	"sub.l @(0x1234:16,er3),@-er1"
gdb_test "x" "sub.l\t@\\(0x1234(:16|),er3\\),@er1\\+" \
	"sub.l @(0x1234:16,er3),@er1+"
gdb_test "x" "sub.l\t@\\(0x1234(:16|),er3\\),@er1-" \
	"sub.l @(0x1234:16,er3),@er1-"
gdb_test "x" "sub.l\t@\\(0x1234(:16|),er3\\),@\\+er1" \
	"sub.l @(0x1234:16,er3),@+er1"
gdb_test "x" "sub.l\t@\\(0x1234(:16|),er3\\),@\\(0x9abc(:16|),er1\\)" \
	"sub.l @(0x1234:16,er3),@(0x9abc:16,er1)"
gdb_test "x" "sub.l\t@\\(0x1234(:16|),er3\\),@\\(0x9abcdef0(:32|),er1\\)" \
	"sub.l @(0x1234:16,er3),@(0x9abcdef0:32,er1)"
gdb_test "x" "sub.l\t@\\(0x1234(:16|),er3\\),@\\(0x9abc(:16|),r2l.b\\)" \
	"sub.l @(0x1234:16,er3),@(0x9abc:16,r2l.b)"
gdb_test "x" "sub.l\t@\\(0x1234(:16|),er3\\),@\\(0x9abc(:16|),r2.w\\)" \
	"sub.l @(0x1234:16,er3),@(0x9abc:16,r2.w)"
gdb_test "x" "sub.l\t@\\(0x1234(:16|),er3\\),@\\(0x9abc(:16|),er2.l\\)" \
	"sub.l @(0x1234:16,er3),@(0x9abc:16,er2.l)"
gdb_test "x" "sub.l\t@\\(0x1234(:16|),er3\\),@\\(0x9abcdef0(:32|),r2l.b\\)" \
	"sub.l @(0x1234:16,er3),@(0x9abcdef0:32,r2l.b)"
gdb_test "x" "sub.l\t@\\(0x1234(:16|),er3\\),@\\(0x9abcdef0(:32|),r2.w\\)" \
	"sub.l @(0x1234:16,er3),@(0x9abcdef0:32,r2.w)"
gdb_test "x" "sub.l\t@\\(0x1234(:16|),er3\\),@\\(0x9abcdef0(:32|),er2.l\\)" \
	"sub.l @(0x1234:16,er3),@(0x9abcdef0:32,er2.l)"
gdb_test "x" "sub.l\t@\\(0x1234(:16|),er3\\),@0x9abc(:16|)" \
	"sub.l @(0x1234:16,er3),@0x9abc:16"
gdb_test "x" "sub.l\t@\\(0x1234(:16|),er3\\),@0x9abcdef0(:32|)" \
	"sub.l @(0x1234:16,er3),@0x9abcdef0:32"
gdb_test "x" "sub.l\t@\\(0x12345678(:32|),er3\\),@er1" \
	"sub.l @(0x12345678:32,er3),@er1"
gdb_test "x" "sub.l\t@\\(0x12345678(:32|),er3\\),@\\(0xc(:2|),er1\\)" \
	"sub.l @(0x12345678:32,er3),@(0xc:2,er1)"
gdb_test "x" "sub.l\t@\\(0x12345678(:32|),er3\\),@-er1" \
	"sub.l @(0x12345678:32,er3),@-er1"
gdb_test "x" "sub.l\t@\\(0x12345678(:32|),er3\\),@er1\\+" \
	"sub.l @(0x12345678:32,er3),@er1+"
gdb_test "x" "sub.l\t@\\(0x12345678(:32|),er3\\),@er1-" \
	"sub.l @(0x12345678:32,er3),@er1-"
gdb_test "x" "sub.l\t@\\(0x12345678(:32|),er3\\),@\\+er1" \
	"sub.l @(0x12345678:32,er3),@+er1"
gdb_test "x" "sub.l\t@\\(0x12345678(:32|),er3\\),@\\(0x9abc(:16|),er1\\)" \
	"sub.l @(0x12345678:32,er3),@(0x9abc:16,er1)"
gdb_test "x" "sub.l\t@\\(0x12345678(:32|),er3\\),@\\(0x9abcdef0(:32|),er1\\)" \
	"sub.l @(0x12345678:32,er3),@(0x9abcdef0:32,er1)"
gdb_test "x" "sub.l\t@\\(0x12345678(:32|),er3\\),@\\(0x9abc(:16|),r2l.b\\)" \
	"sub.l @(0x12345678:32,er3),@(0x9abc:16,r2l.b)"
gdb_test "x" "sub.l\t@\\(0x12345678(:32|),er3\\),@\\(0x9abc(:16|),r2.w\\)" \
	"sub.l @(0x12345678:32,er3),@(0x9abc:16,r2.w)"
gdb_test "x" "sub.l\t@\\(0x12345678(:32|),er3\\),@\\(0x9abc(:16|),er2.l\\)" \
	"sub.l @(0x12345678:32,er3),@(0x9abc:16,er2.l)"
gdb_test "x" "sub.l\t@\\(0x12345678(:32|),er3\\),@\\(0x9abcdef0(:32|),r2l.b\\)" \
	"sub.l @(0x12345678:32,er3),@(0x9abcdef0:32,r2l.b)"
gdb_test "x" "sub.l\t@\\(0x12345678(:32|),er3\\),@\\(0x9abcdef0(:32|),r2.w\\)" \
	"sub.l @(0x12345678:32,er3),@(0x9abcdef0:32,r2.w)"
gdb_test "x" "sub.l\t@\\(0x12345678(:32|),er3\\),@\\(0x9abcdef0(:32|),er2.l\\)" \
	"sub.l @(0x12345678:32,er3),@(0x9abcdef0:32,er2.l)"
gdb_test "x" "sub.l\t@\\(0x12345678(:32|),er3\\),@0x9abc(:16|)" \
	"sub.l @(0x12345678:32,er3),@0x9abc:16"
gdb_test "x" "sub.l\t@\\(0x12345678(:32|),er3\\),@0x9abcdef0(:32|)" \
	"sub.l @(0x12345678:32,er3),@0x9abcdef0:32"
gdb_test "x" "sub.l\t@\\(0x1234(:16|),r3l.b\\),@er1" \
	"sub.l @(0x1234:16,r3l.b),@er1"
gdb_test "x" "sub.l\t@\\(0x1234(:16|),r3l.b\\),@\\(0xc(:2|),er1\\)" \
	"sub.l @(0x1234:16,r3l.b),@(0xc:2,er1)"
gdb_test "x" "sub.l\t@\\(0x1234(:16|),r3l.b\\),@-er1" \
	"sub.l @(0x1234:16,r3l.b),@-er1"
gdb_test "x" "sub.l\t@\\(0x1234(:16|),r3l.b\\),@er1\\+" \
	"sub.l @(0x1234:16,r3l.b),@er1+"
gdb_test "x" "sub.l\t@\\(0x1234(:16|),r3l.b\\),@er1-" \
	"sub.l @(0x1234:16,r3l.b),@er1-"
gdb_test "x" "sub.l\t@\\(0x1234(:16|),r3l.b\\),@\\+er1" \
	"sub.l @(0x1234:16,r3l.b),@+er1"
gdb_test "x" "sub.l\t@\\(0x1234(:16|),r3l.b\\),@\\(0x9abc(:16|),er1\\)" \
	"sub.l @(0x1234:16,r3l.b),@(0x9abc:16,er1)"
gdb_test "x" "sub.l\t@\\(0x1234(:16|),r3l.b\\),@\\(0x9abcdef0(:32|),er1\\)" \
	"sub.l @(0x1234:16,r3l.b),@(0x9abcdef0:32,er1)"
gdb_test "x" "sub.l\t@\\(0x1234(:16|),r3l.b\\),@\\(0x9abc(:16|),r2l.b\\)" \
	"sub.l @(0x1234:16,r3l.b),@(0x9abc:16,r2l.b)"
gdb_test "x" "sub.l\t@\\(0x1234(:16|),r3l.b\\),@\\(0x9abc(:16|),r2.w\\)" \
	"sub.l @(0x1234:16,r3l.b),@(0x9abc:16,r2.w)"
gdb_test "x" "sub.l\t@\\(0x1234(:16|),r3l.b\\),@\\(0x9abc(:16|),er2.l\\)" \
	"sub.l @(0x1234:16,r3l.b),@(0x9abc:16,er2.l)"
gdb_test "x" "sub.l\t@\\(0x1234(:16|),r3l.b\\),@\\(0x9abcdef0(:32|),r2l.b\\)" \
	"sub.l @(0x1234:16,r3l.b),@(0x9abcdef0:32,r2l.b)"
gdb_test "x" "sub.l\t@\\(0x1234(:16|),r3l.b\\),@\\(0x9abcdef0(:32|),r2.w\\)" \
	"sub.l @(0x1234:16,r3l.b),@(0x9abcdef0:32,r2.w)"
gdb_test "x" "sub.l\t@\\(0x1234(:16|),r3l.b\\),@\\(0x9abcdef0(:32|),er2.l\\)" \
	"sub.l @(0x1234:16,r3l.b),@(0x9abcdef0:32,er2.l)"
gdb_test "x" "sub.l\t@\\(0x1234(:16|),r3l.b\\),@0x9abc(:16|)" \
	"sub.l @(0x1234:16,r3l.b),@0x9abc:16"
gdb_test "x" "sub.l\t@\\(0x1234(:16|),r3l.b\\),@0x9abcdef0(:32|)" \
	"sub.l @(0x1234:16,r3l.b),@0x9abcdef0:32"
gdb_test "x" "sub.l\t@\\(0x1234(:16|),r3.w\\),@er1" \
	"sub.l @(0x1234:16,r3.w),@er1"
gdb_test "x" "sub.l\t@\\(0x1234(:16|),r3.w\\),@\\(0xc(:2|),er1\\)" \
	"sub.l @(0x1234:16,r3.w),@(0xc:2,er1)"
gdb_test "x" "sub.l\t@\\(0x1234(:16|),r3.w\\),@-er1" \
	"sub.l @(0x1234:16,r3.w),@-er1"
gdb_test "x" "sub.l\t@\\(0x1234(:16|),r3.w\\),@er1\\+" \
	"sub.l @(0x1234:16,r3.w),@er1+"
gdb_test "x" "sub.l\t@\\(0x1234(:16|),r3.w\\),@er1-" \
	"sub.l @(0x1234:16,r3.w),@er1-"
gdb_test "x" "sub.l\t@\\(0x1234(:16|),r3.w\\),@\\+er1" \
	"sub.l @(0x1234:16,r3.w),@+er1"
gdb_test "x" "sub.l\t@\\(0x1234(:16|),r3.w\\),@\\(0x9abc(:16|),er1\\)" \
	"sub.l @(0x1234:16,r3.w),@(0x9abc:16,er1)"
gdb_test "x" "sub.l\t@\\(0x1234(:16|),r3.w\\),@\\(0x9abcdef0(:32|),er1\\)" \
	"sub.l @(0x1234:16,r3.w),@(0x9abcdef0:32,er1)"
gdb_test "x" "sub.l\t@\\(0x1234(:16|),r3.w\\),@\\(0x9abc(:16|),r2l.b\\)" \
	"sub.l @(0x1234:16,r3.w),@(0x9abc:16,r2l.b)"
gdb_test "x" "sub.l\t@\\(0x1234(:16|),r3.w\\),@\\(0x9abc(:16|),r2.w\\)" \
	"sub.l @(0x1234:16,r3.w),@(0x9abc:16,r2.w)"
gdb_test "x" "sub.l\t@\\(0x1234(:16|),r3.w\\),@\\(0x9abc(:16|),er2.l\\)" \
	"sub.l @(0x1234:16,r3.w),@(0x9abc:16,er2.l)"
gdb_test "x" "sub.l\t@\\(0x1234(:16|),r3.w\\),@\\(0x9abcdef0(:32|),r2l.b\\)" \
	"sub.l @(0x1234:16,r3.w),@(0x9abcdef0:32,r2l.b)"
gdb_test "x" "sub.l\t@\\(0x1234(:16|),r3.w\\),@\\(0x9abcdef0(:32|),r2.w\\)" \
	"sub.l @(0x1234:16,r3.w),@(0x9abcdef0:32,r2.w)"
gdb_test "x" "sub.l\t@\\(0x1234(:16|),r3.w\\),@\\(0x9abcdef0(:32|),er2.l\\)" \
	"sub.l @(0x1234:16,r3.w),@(0x9abcdef0:32,er2.l)"
gdb_test "x" "sub.l\t@\\(0x1234(:16|),r3.w\\),@0x9abc(:16|)" \
	"sub.l @(0x1234:16,r3.w),@0x9abc:16"
gdb_test "x" "sub.l\t@\\(0x1234(:16|),r3.w\\),@0x9abcdef0(:32|)" \
	"sub.l @(0x1234:16,r3.w),@0x9abcdef0:32"
gdb_test "x" "sub.l\t@\\(0x1234(:16|),er3.l\\),@er1" \
	"sub.l @(0x1234:16,er3.l),@er1"
gdb_test "x" "sub.l\t@\\(0x1234(:16|),er3.l\\),@\\(0xc(:2|),er1\\)" \
	"sub.l @(0x1234:16,er3.l),@(0xc:2,er1)"
gdb_test "x" "sub.l\t@\\(0x1234(:16|),er3.l\\),@-er1" \
	"sub.l @(0x1234:16,er3.l),@-er1"
gdb_test "x" "sub.l\t@\\(0x1234(:16|),er3.l\\),@er1\\+" \
	"sub.l @(0x1234:16,er3.l),@er1+"
gdb_test "x" "sub.l\t@\\(0x1234(:16|),er3.l\\),@er1-" \
	"sub.l @(0x1234:16,er3.l),@er1-"
gdb_test "x" "sub.l\t@\\(0x1234(:16|),er3.l\\),@\\+er1" \
	"sub.l @(0x1234:16,er3.l),@+er1"
gdb_test "x" "sub.l\t@\\(0x1234(:16|),er3.l\\),@\\(0x9abc(:16|),er1\\)" \
	"sub.l @(0x1234:16,er3.l),@(0x9abc:16,er1)"
gdb_test "x" "sub.l\t@\\(0x1234(:16|),er3.l\\),@\\(0x9abcdef0(:32|),er1\\)" \
	"sub.l @(0x1234:16,er3.l),@(0x9abcdef0:32,er1)"
gdb_test "x" "sub.l\t@\\(0x1234(:16|),er3.l\\),@\\(0x9abc(:16|),r2l.b\\)" \
	"sub.l @(0x1234:16,er3.l),@(0x9abc:16,r2l.b)"
gdb_test "x" "sub.l\t@\\(0x1234(:16|),er3.l\\),@\\(0x9abc(:16|),r2.w\\)" \
	"sub.l @(0x1234:16,er3.l),@(0x9abc:16,r2.w)"
gdb_test "x" "sub.l\t@\\(0x1234(:16|),er3.l\\),@\\(0x9abc(:16|),er2.l\\)" \
	"sub.l @(0x1234:16,er3.l),@(0x9abc:16,er2.l)"
gdb_test "x" "sub.l\t@\\(0x1234(:16|),er3.l\\),@\\(0x9abcdef0(:32|),r2l.b\\)" \
	"sub.l @(0x1234:16,er3.l),@(0x9abcdef0:32,r2l.b)"
gdb_test "x" "sub.l\t@\\(0x1234(:16|),er3.l\\),@\\(0x9abcdef0(:32|),r2.w\\)" \
	"sub.l @(0x1234:16,er3.l),@(0x9abcdef0:32,r2.w)"
gdb_test "x" "sub.l\t@\\(0x1234(:16|),er3.l\\),@\\(0x9abcdef0(:32|),er2.l\\)" \
	"sub.l @(0x1234:16,er3.l),@(0x9abcdef0:32,er2.l)"
gdb_test "x" "sub.l\t@\\(0x1234(:16|),er3.l\\),@0x9abc(:16|)" \
	"sub.l @(0x1234:16,er3.l),@0x9abc:16"
gdb_test "x" "sub.l\t@\\(0x1234(:16|),er3.l\\),@0x9abcdef0(:32|)" \
	"sub.l @(0x1234:16,er3.l),@0x9abcdef0:32"
gdb_test "x" "sub.l\t@\\(0x12345678(:32|),r3l.b\\),@er1" \
	"sub.l @(0x12345678:32,r3l.b),@er1"
gdb_test "x" "sub.l\t@\\(0x12345678(:32|),r3l.b\\),@\\(0xc(:2|),er1\\)" \
	"sub.l @(0x12345678:32,r3l.b),@(0xc:2,er1)"
gdb_test "x" "sub.l\t@\\(0x12345678(:32|),r3l.b\\),@-er1" \
	"sub.l @(0x12345678:32,r3l.b),@-er1"
gdb_test "x" "sub.l\t@\\(0x12345678(:32|),r3l.b\\),@er1\\+" \
	"sub.l @(0x12345678:32,r3l.b),@er1+"
gdb_test "x" "sub.l\t@\\(0x12345678(:32|),r3l.b\\),@er1-" \
	"sub.l @(0x12345678:32,r3l.b),@er1-"
gdb_test "x" "sub.l\t@\\(0x12345678(:32|),r3l.b\\),@\\+er1" \
	"sub.l @(0x12345678:32,r3l.b),@+er1"
gdb_test "x" "sub.l\t@\\(0x12345678(:32|),r3l.b\\),@\\(0x9abc(:16|),er1\\)" \
	"sub.l @(0x12345678:32,r3l.b),@(0x9abc:16,er1)"
gdb_test "x" "sub.l\t@\\(0x12345678(:32|),r3l.b\\),@\\(0x9abcdef0(:32|),er1\\)" \
	"sub.l @(0x12345678:32,r3l.b),@(0x9abcdef0:32,er1)"
gdb_test "x" "sub.l\t@\\(0x12345678(:32|),r3l.b\\),@\\(0x9abc(:16|),r2l.b\\)" \
	"sub.l @(0x12345678:32,r3l.b),@(0x9abc:16,r2l.b)"
gdb_test "x" "sub.l\t@\\(0x12345678(:32|),r3l.b\\),@\\(0x9abc(:16|),r2.w\\)" \
	"sub.l @(0x12345678:32,r3l.b),@(0x9abc:16,r2.w)"
gdb_test "x" "sub.l\t@\\(0x12345678(:32|),r3l.b\\),@\\(0x9abc(:16|),er2.l\\)" \
	"sub.l @(0x12345678:32,r3l.b),@(0x9abc:16,er2.l)"
gdb_test "x" "sub.l\t@\\(0x12345678(:32|),r3l.b\\),@\\(0x9abcdef0(:32|),r2l.b\\)" \
	"sub.l @(0x12345678:32,r3l.b),@(0x9abcdef0:32,r2l.b)"
gdb_test "x" "sub.l\t@\\(0x12345678(:32|),r3l.b\\),@\\(0x9abcdef0(:32|),r2.w\\)" \
	"sub.l @(0x12345678:32,r3l.b),@(0x9abcdef0:32,r2.w)"
gdb_test "x" "sub.l\t@\\(0x12345678(:32|),r3l.b\\),@\\(0x9abcdef0(:32|),er2.l\\)" \
	"sub.l @(0x12345678:32,r3l.b),@(0x9abcdef0:32,er2.l)"
gdb_test "x" "sub.l\t@\\(0x12345678(:32|),r3l.b\\),@0x9abc(:16|)" \
	"sub.l @(0x12345678:32,r3l.b),@0x9abc:16"
gdb_test "x" "sub.l\t@\\(0x12345678(:32|),r3l.b\\),@0x9abcdef0(:32|)" \
	"sub.l @(0x12345678:32,r3l.b),@0x9abcdef0:32"
gdb_test "x" "sub.l\t@\\(0x12345678(:32|),r3.w\\),@er1" \
	"sub.l @(0x12345678:32,r3.w),@er1"
gdb_test "x" "sub.l\t@\\(0x12345678(:32|),r3.w\\),@\\(0xc(:2|),er1\\)" \
	"sub.l @(0x12345678:32,r3.w),@(0xc:2,er1)"
gdb_test "x" "sub.l\t@\\(0x12345678(:32|),r3.w\\),@-er1" \
	"sub.l @(0x12345678:32,r3.w),@-er1"
gdb_test "x" "sub.l\t@\\(0x12345678(:32|),r3.w\\),@er1\\+" \
	"sub.l @(0x12345678:32,r3.w),@er1+"
gdb_test "x" "sub.l\t@\\(0x12345678(:32|),r3.w\\),@er1-" \
	"sub.l @(0x12345678:32,r3.w),@er1-"
gdb_test "x" "sub.l\t@\\(0x12345678(:32|),r3.w\\),@\\+er1" \
	"sub.l @(0x12345678:32,r3.w),@+er1"
gdb_test "x" "sub.l\t@\\(0x12345678(:32|),r3.w\\),@\\(0x9abc(:16|),er1\\)" \
	"sub.l @(0x12345678:32,r3.w),@(0x9abc:16,er1)"
gdb_test "x" "sub.l\t@\\(0x12345678(:32|),r3.w\\),@\\(0x9abcdef0(:32|),er1\\)" \
	"sub.l @(0x12345678:32,r3.w),@(0x9abcdef0:32,er1)"
gdb_test "x" "sub.l\t@\\(0x12345678(:32|),r3.w\\),@\\(0x9abc(:16|),r2l.b\\)" \
	"sub.l @(0x12345678:32,r3.w),@(0x9abc:16,r2l.b)"
gdb_test "x" "sub.l\t@\\(0x12345678(:32|),r3.w\\),@\\(0x9abc(:16|),r2.w\\)" \
	"sub.l @(0x12345678:32,r3.w),@(0x9abc:16,r2.w)"
gdb_test "x" "sub.l\t@\\(0x12345678(:32|),r3.w\\),@\\(0x9abc(:16|),er2.l\\)" \
	"sub.l @(0x12345678:32,r3.w),@(0x9abc:16,er2.l)"
gdb_test "x" "sub.l\t@\\(0x12345678(:32|),r3.w\\),@\\(0x9abcdef0(:32|),r2l.b\\)" \
	"sub.l @(0x12345678:32,r3.w),@(0x9abcdef0:32,r2l.b)"
gdb_test "x" "sub.l\t@\\(0x12345678(:32|),r3.w\\),@\\(0x9abcdef0(:32|),r2.w\\)" \
	"sub.l @(0x12345678:32,r3.w),@(0x9abcdef0:32,r2.w)"
gdb_test "x" "sub.l\t@\\(0x12345678(:32|),r3.w\\),@\\(0x9abcdef0(:32|),er2.l\\)" \
	"sub.l @(0x12345678:32,r3.w),@(0x9abcdef0:32,er2.l)"
gdb_test "x" "sub.l\t@\\(0x12345678(:32|),r3.w\\),@0x9abc(:16|)" \
	"sub.l @(0x12345678:32,r3.w),@0x9abc:16"
gdb_test "x" "sub.l\t@\\(0x12345678(:32|),r3.w\\),@0x9abcdef0(:32|)" \
	"sub.l @(0x12345678:32,r3.w),@0x9abcdef0:32"
gdb_test "x" "sub.l\t@\\(0x12345678(:32|),er3.l\\),@er1" \
	"sub.l @(0x12345678:32,er3.l),@er1"
gdb_test "x" "sub.l\t@\\(0x12345678(:32|),er3.l\\),@\\(0xc(:2|),er1\\)" \
	"sub.l @(0x12345678:32,er3.l),@(0xc:2,er1)"
gdb_test "x" "sub.l\t@\\(0x12345678(:32|),er3.l\\),@-er1" \
	"sub.l @(0x12345678:32,er3.l),@-er1"
gdb_test "x" "sub.l\t@\\(0x12345678(:32|),er3.l\\),@er1\\+" \
	"sub.l @(0x12345678:32,er3.l),@er1+"
gdb_test "x" "sub.l\t@\\(0x12345678(:32|),er3.l\\),@er1-" \
	"sub.l @(0x12345678:32,er3.l),@er1-"
gdb_test "x" "sub.l\t@\\(0x12345678(:32|),er3.l\\),@\\+er1" \
	"sub.l @(0x12345678:32,er3.l),@+er1"
gdb_test "x" "sub.l\t@\\(0x12345678(:32|),er3.l\\),@\\(0x9abc(:16|),er1\\)" \
	"sub.l @(0x12345678:32,er3.l),@(0x9abc:16,er1)"
gdb_test "x" "sub.l\t@\\(0x12345678(:32|),er3.l\\),@\\(0x9abcdef0(:32|),er1\\)" \
	"sub.l @(0x12345678:32,er3.l),@(0x9abcdef0:32,er1)"
gdb_test "x" "sub.l\t@\\(0x12345678(:32|),er3.l\\),@\\(0x9abc(:16|),r2l.b\\)" \
	"sub.l @(0x12345678:32,er3.l),@(0x9abc:16,r2l.b)"
gdb_test "x" "sub.l\t@\\(0x12345678(:32|),er3.l\\),@\\(0x9abc(:16|),r2.w\\)" \
	"sub.l @(0x12345678:32,er3.l),@(0x9abc:16,r2.w)"
gdb_test "x" "sub.l\t@\\(0x12345678(:32|),er3.l\\),@\\(0x9abc(:16|),er2.l\\)" \
	"sub.l @(0x12345678:32,er3.l),@(0x9abc:16,er2.l)"
gdb_test "x" "sub.l\t@\\(0x12345678(:32|),er3.l\\),@\\(0x9abcdef0(:32|),r2l.b\\)" \
	"sub.l @(0x12345678:32,er3.l),@(0x9abcdef0:32,r2l.b)"
gdb_test "x" "sub.l\t@\\(0x12345678(:32|),er3.l\\),@\\(0x9abcdef0(:32|),r2.w\\)" \
	"sub.l @(0x12345678:32,er3.l),@(0x9abcdef0:32,r2.w)"
gdb_test "x" "sub.l\t@\\(0x12345678(:32|),er3.l\\),@\\(0x9abcdef0(:32|),er2.l\\)" \
	"sub.l @(0x12345678:32,er3.l),@(0x9abcdef0:32,er2.l)"
gdb_test "x" "sub.l\t@\\(0x12345678(:32|),er3.l\\),@0x9abc(:16|)" \
	"sub.l @(0x12345678:32,er3.l),@0x9abc:16"
gdb_test "x" "sub.l\t@\\(0x12345678(:32|),er3.l\\),@0x9abcdef0(:32|)" \
	"sub.l @(0x12345678:32,er3.l),@0x9abcdef0:32"
gdb_test "x" "sub.l\t@0x1234(:16|),@er1" \
	"sub.l @0x1234:16,@er1"
gdb_test "x" "sub.l\t@0x1234(:16|),@\\(0xc(:2|),er1\\)" \
	"sub.l @0x1234:16,@(0xc:2,er1)"
gdb_test "x" "sub.l\t@0x1234(:16|),@-er1" \
	"sub.l @0x1234:16,@-er1"
gdb_test "x" "sub.l\t@0x1234(:16|),@er1\\+" \
	"sub.l @0x1234:16,@er1+"
gdb_test "x" "sub.l\t@0x1234(:16|),@er1-" \
	"sub.l @0x1234:16,@er1-"
gdb_test "x" "sub.l\t@0x1234(:16|),@\\+er1" \
	"sub.l @0x1234:16,@+er1"
gdb_test "x" "sub.l\t@0x1234(:16|),@\\(0x9abc(:16|),er1\\)" \
	"sub.l @0x1234:16,@(0x9abc:16,er1)"
gdb_test "x" "sub.l\t@0x1234(:16|),@\\(0x9abcdef0(:32|),er1\\)" \
	"sub.l @0x1234:16,@(0x9abcdef0:32,er1)"
gdb_test "x" "sub.l\t@0x1234(:16|),@\\(0x9abc(:16|),r2l.b\\)" \
	"sub.l @0x1234:16,@(0x9abc:16,r2l.b)"
gdb_test "x" "sub.l\t@0x1234(:16|),@\\(0x9abc(:16|),r2.w\\)" \
	"sub.l @0x1234:16,@(0x9abc:16,r2.w)"
gdb_test "x" "sub.l\t@0x1234(:16|),@\\(0x9abc(:16|),er2.l\\)" \
	"sub.l @0x1234:16,@(0x9abc:16,er2.l)"
gdb_test "x" "sub.l\t@0x1234(:16|),@\\(0x9abcdef0(:32|),r2l.b\\)" \
	"sub.l @0x1234:16,@(0x9abcdef0:32,r2l.b)"
gdb_test "x" "sub.l\t@0x1234(:16|),@\\(0x9abcdef0(:32|),r2.w\\)" \
	"sub.l @0x1234:16,@(0x9abcdef0:32,r2.w)"
gdb_test "x" "sub.l\t@0x1234(:16|),@\\(0x9abcdef0(:32|),er2.l\\)" \
	"sub.l @0x1234:16,@(0x9abcdef0:32,er2.l)"
gdb_test "x" "sub.l\t@0x1234(:16|),@0x9abc(:16|)" \
	"sub.l @0x1234:16,@0x9abc:16"
gdb_test "x" "sub.l\t@0x1234(:16|),@0x9abcdef0(:32|)" \
	"sub.l @0x1234:16,@0x9abcdef0:32"
gdb_test "x" "sub.l\t@0x12345678(:32|),@er1" \
	"sub.l @0x12345678:32,@er1"
gdb_test "x" "sub.l\t@0x12345678(:32|),@\\(0xc(:2|),er1\\)" \
	"sub.l @0x12345678:32,@(0xc:2,er1)"
gdb_test "x" "sub.l\t@0x12345678(:32|),@-er1" \
	"sub.l @0x12345678:32,@-er1"
gdb_test "x" "sub.l\t@0x12345678(:32|),@er1\\+" \
	"sub.l @0x12345678:32,@er1+"
gdb_test "x" "sub.l\t@0x12345678(:32|),@er1-" \
	"sub.l @0x12345678:32,@er1-"
gdb_test "x" "sub.l\t@0x12345678(:32|),@\\+er1" \
	"sub.l @0x12345678:32,@+er1"
gdb_test "x" "sub.l\t@0x12345678(:32|),@\\(0x9abc(:16|),er1\\)" \
	"sub.l @0x12345678:32,@(0x9abc:16,er1)"
gdb_test "x" "sub.l\t@0x12345678(:32|),@\\(0x9abcdef0(:32|),er1\\)" \
	"sub.l @0x12345678:32,@(0x9abcdef0:32,er1)"
gdb_test "x" "sub.l\t@0x12345678(:32|),@\\(0x9abc(:16|),r2l.b\\)" \
	"sub.l @0x12345678:32,@(0x9abc:16,r2l.b)"
gdb_test "x" "sub.l\t@0x12345678(:32|),@\\(0x9abc(:16|),r2.w\\)" \
	"sub.l @0x12345678:32,@(0x9abc:16,r2.w)"
gdb_test "x" "sub.l\t@0x12345678(:32|),@\\(0x9abc(:16|),er2.l\\)" \
	"sub.l @0x12345678:32,@(0x9abc:16,er2.l)"
gdb_test "x" "sub.l\t@0x12345678(:32|),@\\(0x9abcdef0(:32|),r2l.b\\)" \
	"sub.l @0x12345678:32,@(0x9abcdef0:32,r2l.b)"
gdb_test "x" "sub.l\t@0x12345678(:32|),@\\(0x9abcdef0(:32|),r2.w\\)" \
	"sub.l @0x12345678:32,@(0x9abcdef0:32,r2.w)"
gdb_test "x" "sub.l\t@0x12345678(:32|),@\\(0x9abcdef0(:32|),er2.l\\)" \
	"sub.l @0x12345678:32,@(0x9abcdef0:32,er2.l)"
gdb_test "x" "sub.l\t@0x12345678(:32|),@0x9abc(:16|)" \
	"sub.l @0x12345678:32,@0x9abc:16"
gdb_test "x" "sub.l\t@0x12345678(:32|),@0x9abcdef0(:32|)" \
	"sub.l @0x12345678:32,@0x9abcdef0:32"
